添加右键菜单和标题栏菜单的两种方式

By admin at 2017-12-10 • 1人收藏 • 859人看过

一种是直接利用add

import win.ui.menu;
mainForm.popmenu = win.ui.popmenu(mainForm); 
mainForm.popmenu.add('删除',function(id){ 
        mainForm.listbox.delete()
} ) 
mainForm.popmenu.add('编辑',function(id){ 
        。。。。。。
} )

另外一种是用addtable

mainForm.popmenu.addTable( {
    { "菜单文本";  function(id){
         
    } }; { /*分隔线*/ }
    { "退出程序"; function(id){  
        winform.close() 
   } };
} )

相比这两种形式,第一种可以直接添加ico图片,但是第二种添加批量的更方便

4 个回复 | 最后更新于 2018-01-05
2017-12-10   #1

弹出菜单里怎么级联多重菜单项:

var topbarmenu = win.ui.popmenu(winform);
topbarmenu.addTable( {
    { "收起格子";  function(id){
        winform.msgbox("收起格子")
    } }; 
    { "显示方式";{
                    {
                        "图标";   function(id){
                            winform.msgbox("图标")
                        }
                         
                    };
                    {
                        "列表";   function(id){
                            winform.msgbox("列表")
                        }
                         
                    }
                }
     
      };
     { "排序方式";{
                    {
                        "名称";   function(id){
                            winform.msgbox("名称")
                        }
                         
                    };
                    {
                        "大小";   function(id){
                            winform.msgbox("大小")
                        }
                         
                    };
                    {
                        "类型";   function(id){
                            winform.msgbox("类型")
                        }
                         
                    };
                    {
                        "修改时间"; function(id){
                            winform.msgbox("修改时间")
                        }
                         
                    }
                };
     
      }; 
    { "重命名";  function(id){
            winform.msgbox("重命名")
    } };
    { "移除格子";  function(id){
            winform.msgbox("移除格子");
            winform.close();
    } };
       
} )
 
 
//用的时候
winform.topmenu.oncommand = function(id,event){
    topbarmenu.popup();
}


2018-01-05   #2
var menu = win.ui.menu(winform);
menu.addTable({
    {
        '文件(&F)'; {
            {
                text = '新建(&N)\tCtrl+N';
                proc = new;
                bitmap = "\res\ico\new.bmp"
            }; {
                text = '打开(&O)\tCtrl+O';
                proc = open;
                bitmap = "\res\ico\open.bmp"
            }; {
                text = '保存(&S)\tCtrl+S';
                proc = save;
                bitmap = "\res\ico\save.bmp"
            }; { /*分割线*/ }; {
                text = '打印(&P)\tCtrl+P';
                proc = print;
                bitmap = "\res\ico\print.bmp"
            } { /*分割线*/ }; {
                text = '退出(&E)\tCtrl+E';
                proc = exit;
                bitmap = "\res\ico\close.bmp"
            };
        }
    };
})

addtable 批量添加一样可以直接添加图片

2018-01-05   #3

回复#2 @codex :

这个厉害,函数还可以写到外面

2018-01-05   #4

回复#3 @admin :

定义函数不就是为了重复调用吗 写死在里面就没办法在其他地方用了。

这样可以写到一个库里面,随便调用!

登录后方可回帖

登 录
信息栏
本站永久域名:HtmLayout.Cn
纯私人站,当笔记本用的,学到哪写到哪,目前在学aardio+halcon机器视觉.
Htmlayout界面在线学习文档
Sciter中文在线文档Sciter在线学习文档
本 站 主 站:Stm32cube中文网
Aardio 官方站:Aardio官方
Aardio最新功能:Aardio官方更新日志
aardio在线手册Aardio在线手册
C大Aardio论坛:Aar爱好者论坛
简码教程网:简码编程
AARDIO语言QQ群:70517368
赞助商:才仁机械
下载站:非凡软件站
Loading...