我有JTable
它有一個JCheckBox
和JComoboBox
在兩個不同的列。當我選擇對應於該行的JCheckBox
時,應該禁用JComboBox
。請幫助我。禁用JComboBox內JTable點擊JCheckBox
0
A
回答
4
只需根據您的模型禁用單元格的編輯。在您的TableModel中,覆蓋/實現isCellEditable()
方法以返回複選框的「值」。
雖然下面的例子不是基於JComboBox中,它說明了如何基於在該行開頭的複選框的值來禁用一個單元的版本:
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.SwingUtilities;
import javax.swing.table.DefaultTableModel;
public class TestTable {
public JFrame f;
private JTable table;
public class TestTableModel extends DefaultTableModel {
public TestTableModel() {
super(new String[] { "Editable", "DATA" }, 3);
for (int i = 0; i < 3; i++) {
setValueAt(Boolean.TRUE, i, 0);
setValueAt(Double.valueOf(i), i, 1);
}
}
@Override
public boolean isCellEditable(int row, int column) {
if (column == 1) {
return (Boolean) getValueAt(row, 0);
}
return super.isCellEditable(row, column);
}
@Override
public Class<?> getColumnClass(int columnIndex) {
if (columnIndex == 0) {
return Boolean.class;
} else if (columnIndex == 1) {
return Double.class;
}
return super.getColumnClass(columnIndex);
}
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
new TestTable().initUI();
}
});
}
protected void initUI() {
table = new JTable(new TestTableModel());
f = new JFrame();
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setSize(300, 300);
f.setLocationRelativeTo(null);
f.add(new JScrollPane(table));
f.setVisible(true);
}
}
相關問題
- 1. JcheckBox在Jtable
- 2. JTable中的JCheckbox
- 3. JTable單元格內的JComboBox
- 4. jcheckbox in jtable在點擊時無所作爲,請幫助needfull
- 5. JTable中的JCheckBox值
- 6. 可用性功能JComboBox的內JTable中
- 7. JComboBox的Java JTable
- 8. 鏈接JComboBox&JTable
- 9. 如何根據我在JComboBox中點擊的項目更新Jtable?
- 10. JTable與JCombobox編輯器:處理鼠標點擊
- 11. java.awt.IllegalComponentStateException當我點擊JTable中的JComboBox問題
- 12. Jtable中的JComboBox不會停止編輯鼠標點擊
- 13. 如何在與JTable內部的JComboBox交互時保持JComboBox的焦點?
- 14. JCheckBox在JTable中的行爲
- 15. 禁用JBut內部JTable
- 16. 在JTable內設置JComboBox選定索引
- 17. 移除JTable內的JCombobox邊框
- 18. 從JTable返回JComboBox
- 19. JTable,JComboBox動態值
- 20. 的JComboBox在JTable中
- 21. JTable中JCombobox的setSelectedItem
- 22. 使用Netbeans將JCheckBox添加到JTable
- 23. 使用多個Jcheckbox的JTable過濾器
- 24. 添加jcheckBox到Jtable使用GUI
- 25. 鼠標點擊JTable
- 26. 如何使JTable與JComboBox只響應雙擊而不是單擊
- 27. 如何禁用JTable單元格上的鼠標點擊事件?
- 28. 當JCheckBox點擊時添加值
- 29. 將JComboBox放入JTable中
- 30. JComboBox不在jTable中打開
[?你嘗試過什麼] (http://mattgemmell.com/2008/12/08/what-have-you-tried/) – user1329572