我有一个很长的MenuItems列表(> 100)用于弹出菜单,并希望将它们放入多个列而不是默认的1列。 尝试使用以下代码但未成功:
public class CodeSnippet {
public static void main (String [] args) {
Display display = new Display ();
Shell shell = new Shell (display);
final Composite c2 = new Composite(shell, SWT.NONE);
c2.setLayout(new GridLayout(2,true));
Menu menu = new Menu(c2);
for (int i=0; i<8; i++) {
MenuItem item = new MenuItem (menu, SWT.RADIO);
item.setText ("Item " + i);
}
shell.setMenu (menu);
shell.setSize (300, 300);
shell.open ();
while (!shell.isDisposed ()) {
if (!display.readAndDispatch ()) display.sleep ();
}
display.dispose ();
}
}
尽管为用于菜单的控件提供了gridlayout,但不知道为什么它只显示在单列中。
任何线索都会有所帮助。
答案 0 :(得分:0)
您无法控制菜单中项目的布局,布局由您平台上的本机代码决定。