SWT 获取table行中的所有ccombo控件,不使用getControl()方法,代码加备注
时间: 2024-05-10 21:18:59 浏览: 92
在 SWT 的 Table 中,每一行都是一个 TableItem 对象,如果其中包含了 CCombo 控件,可以通过 TableEditor 来获取该控件。
以下是示例代码,假设 Table 对象名为 table:
```
// 获取所有 TableItem
TableItem[] items = table.getItems();
// 遍历每个 TableItem
for (int i = 0; i < items.length; i++) {
TableItem item = items[i];
// 获取 TableEditor 数组
TableEditor[] editors = item.getEditors();
// 遍历每个 TableEditor
for (int j = 0; j < editors.length; j++) {
// 获取 TableEditor 对应的控件
Control control = editors[j].getEditor();
// 判断控件是否为 CCombo 类型
if (control instanceof CCombo) {
CCombo ccombo = (CCombo) control;
// 处理 CCombo 控件
// ...
}
}
}
```
备注:
- 首先通过 Table 的 getItems() 方法获取所有 TableItem 对象。
- 然后遍历每个 TableItem 对象,通过 getEditors() 方法获取该行中所有的 TableEditor 对象。
- 再次遍历每个 TableEditor 对象,通过 getEditor() 方法获取该 Editor 对应的控件。
- 最后判断控件是否为 CCombo 类型,如果是,就进行相应的处理。
阅读全文