Estou implementando o ObjectTableModel mas, quando escrevo:
@Resolvable(colName=Codigo)
diz que a variável “Codigo” não pode ser resolvida. Pelo o que eu havia entendido, essa linha de código serviria apenas para informar o nome de uma coluna do meu JTable. estou errado?
Equece pessoal, acabei de ver que havia esquecido de colocar as “” (aspas duplas) no atributo. :oops: #fail³
C
carvalhos.diogo
Surgiu um novo problema, eu já tentei de tudo mas ainda não encontrei uma resolução.
Quando insiro minha JTable em um JScrollPane uma java.lang.NullPointerException é lançada, pelo o que pude notar parece que minha classe Produtos não está sendo interpretada corretamente.
Segue os codigos:
importbr.tcc.Produtos;importbr.tcc.conexao.ConnectionClass;importcom.towel.el.annotation.AnnotationResolver;importcom.towel.swing.table.ObjectTableModel;publicclassGUIPratosextendsJFrameimplementsActionListener{privateJLabeltitulo;privateJButtonfinalizar;privateJButtoncancelar;privateJButtoncontinuarComprando;privateJTablecardapioPratos;privateJScrollPanepane;// pega a resolucao no monitorDimensiondimensao=Toolkit.getDefaultToolkit().getScreenSize();// insere em variaveis a altura e a largurainty=(int)dimensao.getHeight();intx=(int)dimensao.getWidth();publicGUIPratos()throwsSQLException{AnnotationResolverresolver=newAnnotationResolver(Produtos.class);ObjectTableModel<Produtos>tableModel=newObjectTableModel<Produtos>(resolver,"nomeProduto,descricaoProduto,preco");tableModel.setData(getData());setUndecorated(true);setSize(x,y);// setSize(1366, 768);setExtendedState(MAXIMIZED_BOTH);getContentPane().setLayout(null);setLocationRelativeTo(null);setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);Containercon=getContentPane();titulo=newJLabel("Pratos");titulo.setFont(newFont("Tahoma",Font.BOLD|Font.ITALIC,15));finalizar=newJButton("Finalizar");finalizar.setFont(newFont("Tahoma",Font.PLAIN,11));cancelar=newJButton("Cancelar");cancelar.setFont(newFont("Tahoma",Font.PLAIN,11));continuarComprando=newJButton("Mais produtos");continuarComprando.setFont(newFont("Tahoma",Font.PLAIN,11));cardapioPratos=newJTable(tableModel);
essa é a linha onde o erro acontece:
pane.setViewportView(cardapioPratos);
Alguém sabe o motivo?
Marky.Vasconcelos
Cade onde voce inicializa o pane?
C
carvalhos.diogo
:oops: Foi mal Marky, havia esquecido de inicializar o pane.
Agora como eu faço para que os nomes das colunas definidas em @Resolvable(colName = "nomeDaColuna") apareça em meu JTable?
Obrigado.
Marky.Vasconcelos
Era só colocar dentro de um JScrollPane, não apareceu?
C
carvalhos.diogo
Mais uma questão. Utilizo esse método para preencher meu JTableModel: