gpt4 book ai didi

java - JTable 中的 JCheckBox 行为

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:54:19 25 4
gpt4 key购买 nike

我按照网上某处的说明在 JTable 中插入复选框。这是我的代码:

  protected class JTableCellRenderer implements TableCellRenderer {

@Override
public Component getTableCellRendererComponent(JTable table, Object value,
boolean isSelected, boolean hasFocus, int row, int column) {
JCheckBox rendererComponent = new JCheckBox();
rendererComponent.setSelected((Boolean) tableModel.getValueAt(row,
column));
return rendererComponent;
}

}

我设法将复选框添加到 JTable,但是当我运行程序时,出现以下行为:

enter image description here

当用户单击复选框时,如何允许用户选中该复选框而不是从下拉菜单中选择 True 或 False?谢谢!

最佳答案

您遵循的方向很糟糕,因为无需摆弄渲染器或编辑器(顺便说一下,您的问题是您更改了渲染器而不更改编辑器)。您所要做的就是在您的 TableModel 类中覆盖 getColumnClass(int index) 方法并让它为需要复选框的列返回 Boolean.class。就是这样。 JTable 将自动为列的渲染器和编辑器使用一个复选框,以非常简单的方式解决您的问题。当然,不用说,该列的数据必须是 boolean 值才能起作用。

有关 JTables 的 Oracle 教程将告诉您所有这些以及更多信息:How to use Tables

关于java - JTable 中的 JCheckBox 行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7410805/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com