我目前正在使用netbeans编写我的第一个GUI应用程序。我的JComboBox
中有JTable
和JFrame
。
当在ComboBox
中选择了一个项目时,我想向JTable
添加行,但是在什么情况下我应该放置将填充Jtable的代码
答案 0 :(得分:0)
您需要将侦听器添加到comboBox,然后获取jtable的模型并添加行
ActionListener actionListener = new ActionListener() {
public void actionPerformed(ActionEvent actionEvent) {
System.out.println("Selected: " + comboBox.getSelectedItem());
System.out.println(", Position: " + comboBox.getSelectedIndex());
DefaultTableModel model = (DefaultTableModel) jTable1.getModel();
model.addRow(row);
}
};
答案 1 :(得分:0)
您可以使用 ActionPerformed 事件或JCOMBOBOX的 ItemStateChanged 事件。
You can right click on the JCOMBOBOX and do the following
public void populateTable(JTable jt, String value) {
DefaultTableModel dtm = (DefaultTableModel) jt.getModel();
int rowCount = jt.getRowCount();
for (int i = rowCount - 1; i >= 0; i--) {
dtm.removeRow(i);
}
Object data[] = new Object[1];
data[0] = value;
dtm.addRow(data);
}
private void jComboBox1ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
String selValue =(String) jComboBox1.getSelectedItem();
populateTable(jTable1, selValue);
}
以下是输出: Output