我正在尝试从Application.e4xmi在我的Eclipse RCP应用程序的按钮之后的工具栏中添加搜索字段,但是它不起作用。我创建了一个带有处理程序的ToolControl:

@Execute
public void execute(Shell shell)
{

     shell.setLayout(new GridLayout());
        final Composite comp = new Composite(shell, SWT.NONE);
        comp.setLayout(new GridLayout());
        Text text = new Text(comp, SWT.BORDER);
        text.setMessage("Search");
        text.setToolTipText("search");
        System.out.println("i am in SearchToolItem ");


        GridData lGridData = new GridData(GridData.FILL, GridData.FILL, true, true);
        lGridData.widthHint = 200;
        text.setLayoutData(lGridData);
}


我应该怎么做?

java - Eclipse RCP应用程序工具栏中的文本框-LMLPHP

java - Eclipse RCP应用程序工具栏中的文本框-LMLPHP

最佳答案

我假设您在e4xmi中将此类指定为ToolControl

ToolControl不使用@Execute,也没有使用Shell

而是使用@PostConstruct并指定一个Composite

@PostConstruct
public void postConstruct(Composite parent)
{
   Composite comp = new Composite(parent, SWT.NONE);
   comp.setLayout(new GridLayout());

  ....
}


注意:请勿更改父组合的布局。

09-05 21:43