SWT检查表禁用复选框

时间:2012-10-01 14:12:25

标签: java checkbox swt

我有以下列方式创建的SWT Table

new Table(tabFolder, SWT.CHECK | SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL);

现在每行都有一个复选框。如何为单个TableItem禁用(灰显)此复选框?

3 个答案:

答案 0 :(得分:2)

使用TableItem.setGrayed (boolean grayed)。即使它显示为灰色,仍然可以检查/取消选中它。要禁用选中/取消选中,请使用TableItem.setChecked(boolean checked)

答案 1 :(得分:0)

我不确定您是否可以禁用自动管理的复选框(即在表格中使用SWT.CHECK)。

解决方案是自己管理编辑器(see snippet

然后在需要时在编辑器上执行此操作:

myButton.setEnabled(false);

答案 2 :(得分:0)

在我知道的已检查表中禁用行的唯一方法是向表中添加一个侦听器,一旦选中该复选框,就重置选择。要“灰色”(不幸的是按钮而不是行),您可以使用适当的ColumnLabelProvider。