【第四章4.2】菜单 -- 窗口菜单
//窗口菜单 import win.ui; import win.ui.menu; /*DSG{{*/ var winform = win.form(text="菜单用法演示";right=497;bottom=345) winform.add() /*}}*/ /* 注意使用菜单需要先调用 import win.ui.menu,不然发布后会报错。 开发环境下运行,为了加快启动速度,不会百分百排除所有没有引用的库, 当然大家也可以像其他开发工具那样,每次都发布成 EXE 文件后再运行。 */ var menuFile = win.ui.popmenu(winform);//创建弹出菜单 menuFile.add( "打开", function(id){ winform.msgbox("打开文件") } ) //------------------------------------ var menuHelp = win.ui.popmenu(winform);//创建弹出菜单 menuHelp.add( "关于", function(id){ winform.msgbox("关于") } ) menuHelp.add(); //添加分隔线 menuHelp.addTable( { { "帮助"; function(id){ winform.msgbox("帮助") } }; { /*---分隔线---*/ }; { "退出"; function(id){ winform.close() } }; } ) var menuRadio = win.ui.popmenu(winform);//创建弹出菜单 menuRadio.onMenuItemClick = function(id){ menuRadio.selId = id; winform.msgbox( menuRadio.selText ) } menuRadio.add("a" ) menuRadio.add("b" ) menuRadio.add("c" ) var menu = win.ui.menu(winform);//创建主菜单 menu.add('文件',menuFile) menu.add('帮助',menuHelp) menu.add('选择其中一个',menuRadio) //主菜单构建完成后要用下面这句更新,menu.addTable()会自动调用redraw() //menu.redraw(); menu.addTable( { { "测试菜单"; { { "子菜单"; function(id){ winform.msgbox("测试菜单->子菜单") } }; { "子菜单2"; function(id){ winform.msgbox("测试菜单->子菜单2") } } } }; { "测试菜单2"; { { "子菜单"; function(id){ winform.msgbox("测试菜单2->子菜单") } }; { "子菜单2"; function(id){ winform.msgbox("测试菜单2->子菜单2") } } } }; } ) winform.show() win.loopMessage();
自己写的案例,多级菜单 注意:需要先添加弹窗菜单,然后在添加主目录
// 导入 win.ui 库,用于创建图形界面 import win.ui; // 导入 win.ui.menu 库,用于创建菜单 import win.ui.menu; // 导入 win.dlg.message 库,用于显示消息对话框 import win.dlg.message; /*DSG{{*/ // 创建一个窗口,窗口标题为 "aardio form菜单开发教程" var winform = win.form(text="aardio form菜单开发教程";right=759;bottom=469) // 在窗口中添加控件,这里留空,因为不需要添加任何控件 winform.add() /*}}*/ /*子菜单部分{{*/ // 创建一个弹出菜单 popmenu = win.ui.popmenu(winform); // 向弹出菜单中添加菜单项 "打开",并为其指定一个响应函数 popmenu.add('打开',function(id){ // 在下面输入菜单响应代码 winform.msgOk("准备打开文件...."); }); // 添加一个分隔线 popmenu.add(); // 向弹出菜单中添加菜单项 "退出",并为其指定一个响应函数,响应函数中关闭窗口 popmenu.add('退出',function(id){ winform.close() }); // 创建一个帮助弹出菜单 helpmenu = win.ui.popmenu(winform); // 向帮助弹出菜单中添加菜单项 "关于我们",并为其指定一个响应函数 helpmenu.add("关于我们",function(){ winform.msgOk("关于我们"); }); // 添加一个分隔线 helpmenu.add(); // 向帮助弹出菜单中添加菜单项 "激活软件",并为其指定一个响应函数 helpmenu.add("激活软件",function(){ winform.msgbox("激活软件中...."); }); /*}}*/ /*主菜单部分{{*/ // 创建一个主菜单 var menu = win.ui.menu(winform); // 向主菜单中添加一个名为 "文件" 的菜单项,并为其指定一个弹出菜单 menu.add('文件', popmenu); // 向主菜单中添加一个名为 "帮助" 的菜单项,并为其指定一个弹出菜单 menu.add('帮助', helpmenu); // 使用表方式向主菜单中添加菜单项 menu.addTable( { {"菜单测试"; { { "子菜单2";function(id){ winform.msgAsk("我是子菜单2") }}; { "子菜单2";function(id){ winform.msgAsk("我是子菜单2") }}; {"二级菜单"; { {"三级菜单1";function(id){ winform.msgAsk("我是子菜单2") }}; {"三级菜单2";function(id){ winform.msgAsk("我是子菜单2") }}; {"三级菜单3";function(id){ winform.msgAsk("我是子菜单2") }}; {"四级菜单"; { {"4级菜单1";function(id){ winform.msgAsk("我是子菜单2") }}; } } } } } }; } ) /*}}*/ // 显示窗口 winform.show(); // 启动消息循环,处理窗口事件 win.loopMessage(); // 返回 winform 对象,用于后续操作 return winform;
软件演示:
相关回复
-
暂无评论!