Salve galera, meu problema é definir a condição (X da questao) para que eu possa tornar uma tabela dinâmica.
O Modelo da tabela é o seguinte:
[code]public Vector addLinhas(){
Vector linha = new Vector();
Vector addlinha = new Vector();
do{
if(GravaDados()){//validação dos dados da tela
addlinha.addElement(prd);//nome do produto
addlinha.addElement(qtd);//quantidade --dada pelo valor inteiro correspondente de um JTextField
addlinha.addElement(s);//valor unitário do produto
addlinha.addElement(t);//multiplicação de qtd e s (valor da compra)
linha.addElement(addlinha);
}
}while(//condição);//X DA QUESTAO
return linha;
}
public Vector addColunas(){
final Vector colunas = new Vector();
colunas.addElement("Produto");
colunas.addElement("Quantidade");
colunas.addElement("Valor - R$");
colunas.addElement("Total - R$");
return colunas;
}
public DefaultTableModel setaModelo(){
DefaultTableModel modelo = new DefaultTableModel(addLinhas(), addColunas());
return modelo;
}[/code]
Eu passo o modelo através de um evento do btAdicionar:
[code]
private void btAdicionarActionPerformed(java.awt.event.ActionEvent evt) {
try{
if(ValidaDados()){
if(GravaDados()){
tblVendas.setModel(setaModelo());
cont = tblVendas.getModel().getRowCount();
tblVendas.getColumnModel().getColumn(1).setMinWidth(80);
tblVendas.getColumnModel().getColumn(1).setMaxWidth(80);
tblVendas.getColumnModel().getColumn(2).setMinWidth(80);
tblVendas.getColumnModel().getColumn(2).setMaxWidth(80);
tblVendas.getColumnModel().getColumn(3).setMinWidth(80);
tblVendas.getColumnModel().getColumn(3).setMaxWidth(80);
contador ++;
if(contador>0){
cbxCliente.setEnabled(false);
}
}
}
}catch(Exception ex){
JOptionPane.showMessageDialog(null, "Ocorreu uma falha durante a exibição dos dados.", "Atenção", JOptionPane.ERROR_MESSAGE);
}
}[/code]
Não atentem ao fato de a estrutura do código ser um tanto quanto feia(sou iniciante ;])
Não consigo definir a condição do “do while” para que eu consiga rodar o programa sem problemas… como posso fazê-la??
vlwz ae