Boa tarde pessoal, esse é meu primeiro post aqui no fórum.
sou novo no assunto e por tanto já vou começar a fazer alguns cursos aqui do site, mas enquanto não fico bom, estou tendo muitas duvidas.
estou em uma parte que desconheço que é a manipulação da tabela.
eu tenho 4 colunas onde vou lançar dados coletados nelas e preciso que com base nesses resultados ela mude um combobox com conteúdo “Aprovado, Reprovado e Referencia” que está situado na grade da jttable.
eu tenho 2 maneiras de resultados…
1- coluna Resultado_Numerico -> onde são lançados os resultados numéricos
2- coluna Resultado_Texto -> onde são lançados os resultados texto e numéricos
alem dessas colunas eu tenho outra coluna que se chama “Tipo” onde ela contem valores "Min e Max, Texto, No Min, No Max"
onde são selecionados em outra jframe e tenho outra coluna com valores com base na coluna acima
exemplo: Min e Max (150 a 180) No Min (130) No Max (150) e texto (qualquer valor) pode ser qualquer valor, mas esse é apenas um exemplo.
oq quero com isso…
quando eu lançar resultados na coluna "Resultado_Numerico ou Resultado_Texto, ele faça a comparação e mude para aprovado, reprovado ou referencia.
se o valor do campo resultado numero estiver dentro da especificação do Min e Max, quer dizer q está aprovado e se estiver acima ou abaixo, reprovado.
se o valor do tipo texto for igual ou especificado exemplo “30043563” e a pessoa lançar o valor “30043563” quer dizer que está aprovado e se não estiver igual, quer dizer que está reprovado.
se o valor No Min ou No Max estiver igual exemplo “15” e a pessoa lançar “15” quer dizer que ele é referencia e se não estiver igual, é reprovado.
Por favor, alguém poderia me ajudar?
segue o código de tabela
DefaultTableModel modelo = new DefaultTableModel(null, new String[]{ "ID", // 0 "Ordem", // 1 "Linha", // 2 "Linha_Tipo", // 3 "Setor", // 4 "Perfil", // 5 "Bpcs", // 6 "Desc_Perfil", // 7 "Projeto", // 8 "OEM", // 9 "Nº_Desenho", // 10 "Nº_Plano", // 11 "Operação", // 12 "Equipamento", // 13 "Desc_Teste", // 14 "Complemento", // 15 "Cod_Teste", // 16 "Espec_Min", // 17 "Espec_Max", // 18 "Espec_Unid", // 19 "Espec_Texto", // 20 "Referência", // 21 "Frequência", // 22 "Freq_Unid", // 23 "Produto", // 24 "Origem", // 25 "Tipo", // 26 "Especificação", // 27 "Freq_Texto", // 28 "Laboratorio", // 29 "Resultado_Numerico", // 30 "Resultado_Texto", // 31 "Observação", // 32 "Aprovado"}) { // 33
@Override public boolean isCellEditable(int linha, int coluna) { switch (coluna) { case 30: case 31:
String tipo = (String) getValueAt(linha, 26); if (tipo != null) { switch (tipo) { case "Min e Max": case "No Min": case "No Max":
return coluna == 30;
case "Texto": return coluna == 31; default: return false; } } return false; case 32: case 33: return true; default: return false; } } };
combobox
TableColumn coluna_um = CadresultadoTabela.getColumnModel().getColumn(33); coluna_um.setCellEditor(new DefaultCellEditor(combo)); combo.addItem(""); combo.addItem("Aprovado"); combo.addItem("Reprovado"); combo.addItem("Referência");