0

我创建了一个带有文本字段和两个 toolItem 的工具栏

文本存在于右侧屏幕中而不是左侧屏幕中的问题。

如何将文本放在正确的屏幕上?

它应该看起来:

文本项 1 项 2

   ToolBar treeToolBar = new ToolBar(treeComposite, SWT.RIGHT_TO_LEFT);


    Text text = new Text(treeToolBar, SWT.NONE);
    text.setLayoutData(new GridData(SWT.FILL, SWT.LEFT, false, false));
    text.setText("Text"); 
    text.pack();

    item1 = new ToolItem(treeToolBar, SWT.PUSH | SWT.RIGHT);

    item2 = new ToolItem(treeToolBar, SWT.PUSH | SWT.RIGHT);


   treeToolBar.pack();
4

1 回答 1

1

创建文本后,您还必须为其创建一个选项卡项。删除text.pack()呼叫并插入:

ToolItem textItem = new ToolItem(treeToolBar, SWT.SEPARATOR);
textItem.setControl(text);
textItem.setWidth(text.computeSize(SWT.DEFAULT, SWT.DEFAULT, true).x);

这就是ControlContribution方法中的做法fill(ToolBar parent, int index)

于 2013-11-12T08:56:56.493 回答