testa ai este exemplo…ele esta rodando certinho…
[code]import javax.swing.;
import java.awt.;
import java.awt.event.;
import javax.swing.table.;
import javax.swing.border.*;
public class ExemploJTable extends JFrame {
private JComboBox scmbSexo;
private JPanel bAdd;
private JButton bDelete;
private JButton bMais;
private JButton bMenos;
private JButton jButton1;
private JPanel pnTable;
private JScrollPane scrollTable;
private JTable table;
Container container;
public ExemploJTable() {
this.getContentPane().setLayout(null);
container = getContentPane();
String[] sexos = {"M","F"};
scmbSexo = new JComboBox(sexos);
initComponents();
}
private void initComponents(){
bAdd = new JPanel();
setTitle(“Exemplo JTable imasters”);
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent evt) {
exitForm(evt);
}
});
bAdd.setLayout(null);
table = new JTable();
table.setModel(new DefaultTableModel(new Object [][] { },new String [] {" ","Nome", "Telefone","email","Sexo"})
{}
);
table.getColumnModel().getColumn(0).setPreferredWidth(10);
table.getColumnModel().getColumn(0).setResizable(false);
table.getColumnModel().getColumn(1).setPreferredWidth(150);
table.getColumnModel().getColumn(1).setResizable(true);
table.getColumnModel().getColumn(2).setPreferredWidth(60);
table.getColumnModel().getColumn(2).setResizable(true);
table.getColumnModel().getColumn(3).setPreferredWidth(160);
table.getColumnModel().getColumn(3).setResizable(true);
table.getColumn(table.getColumnName(4)).setCellEditor(new DefaultCellEditor(scmbSexo));
table.getColumnModel().getColumn(4).setPreferredWidth(30);
table.getColumnModel().getColumn(4).setResizable(true);
table.getTableHeader().setReorderingAllowed(false);
table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
scrollTable = new JScrollPane();
scrollTable.setViewportView(table);
scrollTable.setBounds(10, 10, 370, 230);
container.add(scrollTable);
bMenos = new JButton();
bMenos.setText("-");
bMenos.setBounds(400, 110, 40, 40);
this.getContentPane().add(bMenos);
bMenos.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
int[] l = table.getSelectedRows();
DefaultTableModel dtm = (DefaultTableModel)table.getModel();
for(int i = (l.length-1); i >= 0; --i) {
if("".equals(table.getValueAt(l[i],1).toString().trim())) {
dtm.removeRow(l[i]);
}
}
}
});
bMais = new JButton();
bMais.setText("+");
bMais.setBounds(400, 60, 40, 40);
this.getContentPane().add(bMais);
bMais.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
DefaultTableModel dtm = (DefaultTableModel)table.getModel();
dtm.addRow(new Object[]{"","","","",""});
}
});
jButton1 = new JButton();
jButton1.setText("Add");
jButton1.setBounds(390, 180, 60, 23);
this.getContentPane().add(jButton1);
jButton1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
DefaultTableModel dtm = (DefaultTableModel)table.getModel();
dtm.addRow(new Object[]{" ","Almedson Ferreira","1111111","aferreira@agrovale.com","M"});
}
});
bDelete = new JButton();
bDelete.setText("Del");
bDelete.setBounds(390, 210, 60, 23);
this.getContentPane().add(bDelete);
bDelete.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
int[] l = table.getSelectedRows();
DefaultTableModel dtm = (DefaultTableModel)table.getModel();
for(int i = (l.length-1); i >= 0; --i)
dtm.removeRow(l[i]);
}
});
setLocation(10,20);
setSize(500,300);
}
private void exitForm(WindowEvent evt){
System.exit(0);
}
public static void main(String args[]){
new ExemploJTable().show();
}
}[/code]