SWT里的Menu编程
来源:互联网 发布:java配置文件放哪里 编辑:程序博客网 时间:2024/05/21 07:49
新建一个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) {
}
}
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) {
}
}
- SWT里的Menu编程
- SWT里的表格编程(翻译)
- SWT里的表格编程(翻译)
- SWT里的表格高级编程(1)(翻译)
- Eclipse3.0的swt编程
- Menu添加方法里的参数
- [工作][JFACE,SWT] menu, toolBar
- SWT编程
- 基于Eclipse 3.0的SWT编程
- 实现SWT(JFace)里的表格隔行换色功能
- 求救:为什么我eclipse VE中的pallete没有swt的menu项
- SWT(JFace)体验之Menu、Bar...
- menu里的退出总是不能直接退出程序
- 使用SWT编程
- Swt编程中的HelloWorld
- SWT界面编程
- SWT图形界面编程学习
- SWT编程–布局
- 只有ss才懂yy
- A simple embedded linux system
- 法治的僵局,儒学的困惑,哲学的思考
- eclipse下的ant实践
- SWT制作下拉式toolbar菜单按钮的代码片段
- SWT里的Menu编程
- 程序人生
- Skyeye使用经验及分析一例.
- 第五周总结
- 《改mdb为asp所带来的灾难》之狗尾续貂
- 太不容易了!
- 用Delphi编写一个Svchost.exe调用的DLL模块
- 学习C++的50条建议【轉】
- Oracle net manager