如果我的工具栏无法显示其所有元素,则应将其自身设置为多线 我的工具栏中有很多工具项,但是我如何设置,所有这些都始终显示,即在多行工具栏中。
请参阅fragment.e4xmi了解模型。
答案 0 :(得分:1)
我找到了一种方法可以将工具栏包装在e4中。 注意:我发现直到2行才开始。
@Inject
private MTrimmedWindow mTrimmedWindow;
String toolbarID = "ID of the toolbar"
现在将以下代码添加到shell或复合调整大小的侦听器
MTrimBar trim = modelService.getTrim(mTrimmedWindow, SideValue.TOP);
List<MTrimElement> children = trim.getChildren();
for (MTrimElement child : children) {
if (child instanceof MToolBar) {
MToolBar mToolBar = (MToolBar) child;
if (toolbarID.equals(mToolBar.getElementId())) {
Object toolBar;
if ((toolBar = mToolBar.getWidget()) != null && toolBar instanceof ToolBar) {
Rectangle rect = getClientArea();
Point size = ((ToolBar)toolBar).computeSize(rect.width, SWT.DEFAULT);
((ToolBar)toolBar).setSize(size);
}
}
}
}