Pessoal,
Estou fazendo um JTree com um plano de contas,
Fiz tudo certinho, criei meu model e criei meu renderer personalizado.
Nao estou conseguindo fazer o valor ficar alinhado à direita. (Veja o arquivo anexado)
Meu renderer atualmente é um JPanel com 3 JLabel:
lblIcone
lblNome
lblSaldo
No jpanel esta tudo certo, se eu mudo o tamanho dele, os dois primeiros ficam presos na margem esquerda e o lblSaldo fica preso na margem direita, porem, ao juntar tudo na jtree ta saindo os valores colado no nome da conta.
Ate aqui tudo bem, sei que isto esta ocorrendo pois o jpanel esta com o tamanho dinamico, porem eu gostaria, neste caso, que ele ficasse com a largura do jtree, alguem pode me ajudar?
Aqui o codigo do renderer, o FinanceiroContaRenderer extends um JPanel e nele tem os 3 labels.
public class FinanceiroContaTreeCellRenderer extends DefaultTreeCellRenderer {
private FinanceiroContaRenderer financeiroContaRenderer = new FinanceiroContaRenderer();
@Override
public Component getTreeCellRendererComponent(JTree tree, Object value, boolean sel, boolean expanded, boolean leaf, int row, boolean hasFocus) {
super.getTreeCellRendererComponent(tree, value, sel, expanded, leaf, row, hasFocus);
if (sel) {
financeiroContaRenderer.setForeground(super.getTextSelectionColor());
financeiroContaRenderer.setBackground(super.getBackgroundSelectionColor());
} else {
financeiroContaRenderer.setForeground(super.getTextNonSelectionColor());
financeiroContaRenderer.setBackground(super.getBackgroundNonSelectionColor());
}
if (value instanceof FinanceiroConta) {
financeiroContaRenderer.setConta((FinanceiroConta) value);
}
return financeiroContaRenderer;
}
}