gpt4 book ai didi

java - 如何在树表中添加复选框

转载 作者:行者123 更新时间:2023-11-30 02:58:48 25 4
gpt4 key购买 nike

我想创建一个具有多列的。我找到了这个教程here (德语)还有这个 answer (英语)。我想在一列中添加复选框,但我不知道该怎么做。当我将复选框返回到 JTreeTable 时,执行中显示的是复选框详细信息而不是复选框对象。我怎样才能得到像this这样的东西,如下图?

like that

最佳答案

Taking the New Swing Tree Table for a Spin所示,引用here ,您的 RowModel 的实现必须从 getColumnClass() 返回正确的类型,并从 getValueFor() 返回正确的值。 Boolean.class 类型的值将使用 JCheckBox 呈现。以下实现产生引用的图像:

image

@Override
public Class getColumnClass(int column) {
switch (column) {
case 0:
return Date.class;
case 1:
return Long.class;
case 2:
return Boolean.class;
case 3:
return Boolean.class;
case 4:
return Boolean.class;
default:
assert false;
}
return null;
}

@Override
public Object getValueFor(Object node, int column) {
File f = (File) node;
switch (column) {
case 0:
return new Date(f.lastModified());
case 1:
return f.length();
case 2:
return f.canRead();
case 3:
return f.canWrite();
case 4:
return f.canExecute();
default:
assert false;
}
return null;
}

I can't select checkbox.

您需要在所需列的 isCellEditable() 实现中返回 true 并更新实现中的node相应的 setValueFor() 。当单元格编辑器结束时,您的 setValueFor() 实现将被调用,因此请验证它是否更新了稍后将由 getValueFor() 返回的相同。您还可以选择使用 EventListenerList 中规定的方案来实现管理 TreeModelListener 列表的 TreeModel 方法。应用程序接口(interface); DefaultTreeModel来源code就是一个很好的例子。

关于java - 如何在树表中添加复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36471989/

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