社区
界面
帖子详情
GetSubMenu()的问题
「已注销」
2008-03-20 12:43:09
用CreateMenu创建了一个菜单hMenu,然后用AppendMenu添加了两个菜单项,使用GetMenuCount(hMenu),返回2,但是我用GetSubMeun(hMenu,1),却总是返回NULL,敢问高手门,这个函数到底怎么用啊?
...全文
322
10
打赏
收藏
GetSubMenu()的问题
用CreateMenu创建了一个菜单hMenu,然后用AppendMenu添加了两个菜单项,使用GetMenuCount(hMenu),返回2,但是我用GetSubMeun(hMenu,1),却总是返回NULL,敢问高手门,这个函数到底怎么用啊?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
小猪瑞比
2008-03-20
打赏
举报
回复
menu.GetSubMenu(0)->TrackPopupMenu(....);
GetMenu(0)->GetSubMenu(1)->CheckMenuItem(...);
「已注销」
2008-03-20
打赏
举报
回复
多谢各位大侠!
liuyusong2356
2008-03-20
打赏
举报
回复
要添加子菜单,应该先创建popup菜单,然后将该子菜单连接到你的菜单。
使用CreatePopupMenu函数创建子菜单,AppendMenu时,指定MF_POPUP样式,将生成的子菜单句柄
传给最后一个参数,MSDN里用的形参名字是lpszNewItem
这样才能调用GetSubMenu,以获取对应的子菜单句柄
顺便说聊聊子菜单和菜单项
子菜单就是popup菜单,点了之后不会执行命令,而是弹出下一级菜单
菜单项就是能够只是一定操作的命令,点了之后,会执行你的代码
cnzdgs
2008-03-20
打赏
举报
回复
常见的主菜单中有“File”、“Edit”、“View”、“Help”这些都是子菜单,点击子菜单会显示出其下面的菜单项和子菜单,而不会产生事件。除了子菜单之外剩下的就是菜单项了。
「已注销」
2008-03-20
打赏
举报
回复
三楼的朋友,能不能说明一下子菜单和菜单项的区别呢,不是很清楚啊。
「已注销」
2008-03-20
打赏
举报
回复
hMenu=CreateMenu();
AppendMenu(hMenu,MF_POPUP,IDM_DRAW,L"Draw");
AppendMenu(hMenu,MF_POPUP,IDM_EDIT,L"Edit");
SetMenu(hWnd,hMenu);
DrawMenuBar(hWnd);
hSubMenu=GetSubMenu(hMenu,1);
这就是原始代码,到底哪里有错误呢?
yupengchen951124
2008-03-20
打赏
举报
回复
顶……
xiaoQ008
2008-03-20
打赏
举报
回复
GetSubMeun返回的是整个子菜单
不是菜单项目
显然你AppendMenu加的是菜单项
你要用MF_POPUP添加子菜单
这样GetSubMeun返回就不为0了
cnzdgs
2008-03-20
打赏
举报
回复
LZ要搞清楚子菜单(submenu)和菜单项(menuitem)的区别。你添加的是菜单项而不是子菜单。
shakaqrj
2008-03-20
打赏
举报
回复
你的代码呢?
看看
get
submenu
.txt
get
submenu
出现断言失败原因,以及解决方法
数据查询,通用性很强的查询
h
SubMenu
& = Get
SubMenu
(hMenu&, 0) ' 获得第一个菜单项 hID& = GetMenuItemID(h
SubMenu
&, 0) '加入位图 SetMenuItemBitmaps hMenu&, hID&, MF_BITMAP, _ Picture1.Picture, _ Picture1.Picture End Sub ...
易语言树型框操作外部菜单
易语言树型框操作外部菜单源码,树型框操作外部菜单,GetMenu,GetMenuItemCount,GetMenuItemID,GetMenuString,Get
SubMenu
,FindWindow,SendMessage,发送消息_
易语言API分割菜单
易语言API分割菜单源码,API分割菜单,GetMenu,GetMenuItemCount,Get
SubMenu
,GetMenuItemInfo,SetMenuItemInfo,GlobalSize
VC 6.0制作的弹出式菜单.rar
//由于需要的是“可弹出项”的第一层子菜单,因此用Get
SubMenu
(0)来得到。 popup=menu.Get
SubMenu
(0); popup->TrackPopupMenu(TPM_LEFTALIGN|TPM_RIGHTBUTTON,point.x, point.y,this); } 然后需要...
界面
15,980
社区成员
115,900
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章