咖迷社区(CAXA数码大方)

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 5784|回复: 2

CAXA2020版二次开发,如何把menu控件加入到菜单栏里

[复制链接]

1

主题

2

帖子

13

积分

新手上路

Rank: 1

积分
13
发表于 2020-8-25 22:47:25 | 显示全部楼层 |阅读模式
2007版有ebAppendMenu()把menu加入到菜单栏,以前这样
  1. //        TODO:        定制用户界面,例如加载用户自定义的菜单等
  2.         CMenu menu;
  3.         menu.LoadMenu(IDR_MENU_APPEND);
  4.         ebAppendMenu(&menu);
复制代码

2020版没有参考实例,看了api也没找到相应的函数啊,怎么把menu控件加入到主界面的菜单栏里去啊,求助!!!


回复

使用道具 举报

3

主题

2502

帖子

1万

积分

超级版主

Rank: 8Rank: 8

积分
14696
发表于 2020-9-3 08:41:56 | 显示全部楼层
目前可能已不支持这种形式,新的API可以参考安装目录下的例子 CRX\ObjectCRX_Samples\Chapter08_UI\HelloWordMenu
回复 支持 反对

使用道具 举报

1

主题

2

帖子

32

积分

新手上路

Rank: 1

积分
32
发表于 2022-7-17 17:59:27 | 显示全部楼层
在CrxEntryPoint.cpp中,有这样一个函数virtual void RegisterServerComponents(),这个是模块加载时运行的函数。
按帮助文件里面的例子写好menu菜单函数后,函数放在这里面即可。
void ADDCRXUI()
{
        CRxUIManager* dasd = crxUIManager;
        CRxMenuBar* pMenuBar = dasd->getCRxMenuBar(); //获得主菜单对象
        unsigned int unCount = pMenuBar->getCount(); //获得子菜单的个数
        CRxPopupMenu* pPopupMenu = pMenuBar->addPopupMenu(unCount, _T("CAXA批处理"));//添加一个子菜单
        pPopupMenu->addMenuItem(0, _T("CAXA文件操作"), _T("GOpenMainDlg"));
}
virtual void RegisterServerComponents()
{
        ADDCRXUI();  //菜单函数
}
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|咖迷社区(CAXA数码大方) ( 京ICP备05001831号-1 )

GMT+8, 2024-4-16 14:59 , Processed in 0.156109 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表