SWT里的Menu编程

2008-02-23 10:00:24来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

新建一个menu bar要以下面的格式开头:
Menu menu = new Menu(shell, SWT.BAR);
//注意Menu的第一个参数一般是shell!
//style必须是SWT.BAR
shell.setMenuBar(menu);

下面加一个item到menu bar:
MenuItem file = new MenuItem(menu, SWT.CASCADE);
//style必须是SWT.CASCADE,否则就不能跟file加drop-down menu
file.setText("file");

现在给file加个menu:
Menu filemenu = new Menu(shell, SWT.DROP_DOWN);
//style必须是SWT.DROP_DOWN
file.setMenu(filemenu);

最后,可以在filemenu上加MenuItem:
MenuItem actionItem = new MenuItem(filemenu, SWT.PUSH);
actionItem.setText("Action");

这样就在File menu上建立一个最简单的可以选择的menu item.
如果要加listener,这样:
actionItem.addListener(SWT.Selection, new Listener() {
public void handleEvent(Event e) {
System.out.println("Action Performed");
}
});

/////////////////////////////////////////////////////////////////////////////

新建一个MenuItem的语句如下:
MenuItem actionItem = new MenuItem(filemenu, SWT.PUSH);
我们一般会建立SWT.PUSH的MenuItem,对于style还有其它的选择:
CHECK,RADIO,SEPARATOR和CASCADE.
SWT.CHECK和SWT.RADIO的用法和SWT.PUSH差不多

对于SWT.CASCADE,能用它在MenuItem上在加上多个MenuItem.
MenuItem cascadeItem = new MenuItem(filemenu, SWT.CASCADE);
cascadeItem.setText("Cascade");
Menu submenu = new Menu(shell, SWT.DROP_DOWN);
cascadeItem.se
tMenu(submenu);

接着就可以在它上面加MenuItem:
final MenuItem subactionItem = new MenuItem(submenu, SWT.PUSH);
subactionItem.setText("&SubAction\tCtrl s");
//S前有个&符号,这是简化的设置快捷键的方法
subactionItem.setAccelerator(SWT.CTRL 'S');
//设置键盘控制.

有许多监听器,注意它们各自的用法:
MenuListener:
作用对象就是Menu(注意不同于MenuItem).
可以侦察到Menu是打开了或者关闭了.
MenuListener() {
public void menuShown(MenuEvent e) {
}
public void menuHidden(MenuEvent e) {
}
}
ArmListener:
当一个menuitem被鼠标或键盘移动到它但并没有选择的时候,
产生ArmEvent事件
ArmListener() {
public void widgetArmed(ArmEvent e) {
}
}
HelpListener:
如果按F1/Help键,HelpListener被激发.
HelpListener() {
public void helpRequested(HelpEvent e) {
}
}

上一篇: Eclipse 3.1M6 发布了...
下一篇: java开源项目研究

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Eclipse 3.1M6 发布了...

下一篇:SWT制作下拉式toolbar菜单按钮的代码片段