3474|7

68

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

EVC下动态控制框架的主菜单的问题 [复制链接]

是这样的
我在MainFrame中装载了一个MenuBar,上面有五个菜单项
但是其中有两项我会不定期的使用。想在不使用的时候将其隐藏掉。
在VC下面可以使用GetMenu()->DeleteMenu(3, MF_BYPOSITION);这样的方式来实现
但是在EVC下面,菜单是不会弹出了,但是菜单文字还是留在主菜单上。
不知道各位大大有没有遇到过这样的问题呢。

如能解决,不胜感激呀。


问题描述:
我有一个菜单
项1  项2  项3  项4
子1  子1  子1  子1
子2  子2  子2  子2

使用了DeleteMenu方法后,就变成
项1  项2  项3  项4
子1  子1  子1  
子2  子2  子2  

这样了

项4 的文字还在主菜单上,很烦恼。多谢大家啦

最新回复

呵呵,采用lenux 的办法解决问题。 同时感谢楼上的回复 这个方法在VC下可用,在EVC下不能用的。 :)  详情 回复 发表于 2008-5-16 17:20
点赞 关注

回复
举报

80

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
菜单我也很头疼。

我一般都是使用多个菜单,然后需要哪个是显示哪个。

你的问题是不是需要更新一下主菜单啊。
 
 

回复

70

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
EVC下好像也有个DeleteMenu,试试这个看看
BOOL DeleteMenu(
  HMENU hMenu,
  UINT uPosition,
  UINT uFlags
);
Parameters
hMenu
[in] Handle to the menu to be changed.
uPosition
[in] Specifies the menu item to be deleted, as determined by the uFlags parameter.
uFlags
[in] Specifies how the uPosition parameter is interpreted. This parameter must be one of the following values. Value Description
MF_BYCOMMAND Indicates that uPosition gives the identifier of the menu item. The MF_BYCOMMAND flag is the default flag if neither the MF_BYCOMMAND nor MF_BYPOSITION flag is specified.
MF_BYPOSITION Indicates that uPosition gives the zero-based relative position of the menu item.

Return Values
Nonzero indicates success. Zero indicates failure. To get extended error information, call GetLastError.

Remarks
The application must call the DrawMenuBar function whenever a menu changes, whether or not the menu is in a displayed window.

Requirements
OS Versions: Windows CE 1.0 and later.
Header: Winuser.h.
Link Library: Menu.lib.

 
 
 

回复

82

帖子

0

TA的资源

一粒金砂(初级)

4
 
引用 1 楼 lenux 的回复:
菜单我也很头疼。

我一般都是使用多个菜单,然后需要哪个是显示哪个。

你的问题是不是需要更新一下主菜单啊。



对的,我需要更新一下主菜单
因为我有一半的菜单项是共用的,如果建多个菜单的话
消息维护也是比较麻烦的。
头疼死了。
 
 
 

回复

79

帖子

0

TA的资源

一粒金砂(初级)

5
 
to: xiaohf702 肖海峰

我已经用了DeleteMenu
菜单也已经删除掉了,但是主菜单上的那个文字还在的。只是子菜单点不出来了。
 
 
 

回复

69

帖子

0

TA的资源

一粒金砂(初级)

6
 
多个菜单中的公用项可以使用相同ID。消息维护就没有问题了
 
 
 

回复

81

帖子

0

TA的资源

一粒金砂(初级)

7
 
删除之后,添加
GetMenu()->DrawMenuBar()

试试看
 
 
 

回复

63

帖子

0

TA的资源

一粒金砂(初级)

8
 
呵呵,采用lenux 的办法解决问题。

同时感谢楼上的回复
这个方法在VC下可用,在EVC下不能用的。
:)
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表