MFC 在自定义工具栏上添加有下拉菜单的按钮。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MFC 在自定义工具栏上添加有下拉菜单的按钮。相关的知识,希望对你有一定的参考价值。

MFC中我有一个自己定义的工具栏,其中有一个带有下拉箭头的按钮,但是不知道怎么为它添加菜单?
菜单也是自己定义的,不是从资源管理器中建立的,所以没有ID。怎样新建一个菜单把它附加到该按钮?
求大侠帮忙,谢谢!

首先添加一个menu资源,如图,

这个你应该知道了,然后,查看你要显示菜单的那个对话框资源的属性,找到menu选项,把它的值改成你刚刚添加的那个menu资源的ID,如图

这样当程序运行的时候就出现你新建的菜单了

追问

我是要用代码创建的,所有没有ID

参考技术A 可以做一个子对话框,在按钮时显示和隐藏。追问

可以给个例子吗?
刚学mfc不久。

追答

子对话框 边框选择None;style选择child
为子对话框添加类,CToolMenu,自动生成cpp和h文件
在主对话框.h文件中include子对话框.h文件
在主对话框.h文件中添加子对话框指针变量:CToolMenu *m_pToolMenu;
在主对话框.cpp中初始化函数中添加代码
m_pToolMenu = new CToolMenu();
m_pToolMenu->Create(IDD_DLG_TOOL_MENU,this);
m_pToolMenu->MoveWindow(&rect,true);
其中rect可以先画一个static隐藏后用来取坐标,你也可以取按钮的坐标之后位移

写个函数控制显示
m_pToolMenu->ShowWindow( SW_SHOW );
m_pToolMenu->ShowWindow( SW_HIDE );

本回答被提问者采纳

以上是关于MFC 在自定义工具栏上添加有下拉菜单的按钮。的主要内容,如果未能解决你的问题,请参考以下文章

★VC-MFC◆CToolbarCtrl && CDialog 下拉菜单 ★

向 CMFCToolbar 添加下拉菜单按钮,看不到菜单

VS2019 mfc combo box 调整下拉框高度(实测可行)及初始化

在MFC子窗体内的下拉菜单添加内容?急!!!!!!

MFC 单文档添加自定义位图工具栏图标

MFC中如何做出一个下拉菜单并且做出不同的选项?