我有一个包含许多文本字段的向导页面。现在,我想对所有这些字段进行类似setToolTip的操作。所有工具提示都是相同的。所以我想知道是否可以在页面中获取所有小部件,然后检查它们是否为文本字段,是否为文本字段设置工具提示。这样可以避免我必须为所有文本字段编写相似的代码行。

最佳答案

您可以使用类似以下内容的方法遍历页面中的控件:

Composite body = (Composite)getControl();

findText(body);

...

private void findText(Composite composite)
{
  Control [] children = composite.getChildren();
  if (children == null || children.length == 0)
    return;

  for (Control child : children)
   {
     if (child == null || child.isDisposed())
       continue;

     if (child instanceof Composite)
       findText((Composite)child);

     if (child instanceof Text)
      {
        ... handle Text control
      }
   }
}

10-08 19:10