我有以下列方式创建的SWT Table
:
new Table(tabFolder, SWT.CHECK | SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL);
现在每行都有一个复选框。如何为单个TableItem
禁用(灰显)此复选框?
答案 0 :(得分:2)
使用TableItem.setGrayed (boolean grayed)
。即使它显示为灰色,仍然可以检查/取消选中它。要禁用选中/取消选中,请使用TableItem.setChecked(boolean checked)
答案 1 :(得分:0)
我不确定您是否可以禁用自动管理的复选框(即在表格中使用SWT.CHECK)。
解决方案是自己管理编辑器(see snippet)
然后在需要时在编辑器上执行此操作:
myButton.setEnabled(false);
答案 2 :(得分:0)
在我知道的已检查表中禁用行的唯一方法是向表中添加一个侦听器,一旦选中该复选框,就重置选择。要“灰色”(不幸的是按钮而不是行),您可以使用适当的ColumnLabelProvider。