当前位置:首页 » 编程博文
开发技术指南» 文章正文
    引言: 问题:一般情况下我们用UPDATE_COMMAND_UI来修改菜单的状态(enable/disable, check/uncheck, change text),但这个方法在一个基于对话框上的菜单却没有效果。
 

 

 ·jenviron 1.3发布    »显示摘要«
    摘要:booolee jenviron 这个软件是用于编辑环境变量的,windows自带的环境变量编辑器太难用了但开发java又要频繁设置环境变量,所以写了这个工具,目前这个软件可以直接操作环境变量并即时刷新操作后的变量结果列表,另外可以获取当前系统变量并编辑导出为批处理文件以备日后使用。 运行时需要vb6运行库支持 作者:boooleeoicq:25737305email:booolee@yah......
    摘要:网页的结构化与模块化 如果你的大学毕业设计是进行一个网站的设计,对于学计算机专业的学生来说并不是一件引以为豪的事,特别是他所设计的作品不能被采用的时候。我的毕业设计是用asp做一个教务管理系统,虽然我的并不喜欢这个毕设经历,但是通过毕设我对使用asp设计网页有了许多认识,特别是关于如何减少页面的重复设计,这是一篇比较初级的帖子,又不妥之处还请各位网友批评指正。 想法的由来和基本思路 一个网站......


让对话框对UPDATECOMMANDUI生效

问题:一般情况下我们用update_command_ui来修改菜单的状态(enable/disable, check/uncheck, change text),但这个方法在一个基于对话框上的菜单却没有效果.

{ 【程序编程相关:JAVA手机游戏策划书(大纲)

void ctestdlg::onupdatefileexit(ccmdui* pcmdui) 【推荐阅读:全面分析MIDP通信API和外部系统交互

     pcmdui->setcheck(true); 【扩展信息:用Javascript和HTML制作的数

     pcmdui->enable(false);

     pcmdui->setradio(true);

     pcmdui->settext("close");

//以上方法在mdi.sdi程序中都能起作用,在对话框中却没有效果,根本没有调用这个函数.

}

 

原因分析:当显示一个下拉的菜单的时候,在显示菜单前会发送wm_initmenupopup消息.而cframewnd::oninitmenupopup函数会刷新这个菜单项,同时如果有update_command_ui响应函数,则调用它.通过它来更新反应每个菜单的外观效果(enabled/disabled, checked/unchecked).

在一个基于对话框的程序中,因为没有oninitmenupopup函数,所以不会调用update_command_ui响应函数,而是使用了cwnd类的默认处理, 这种处理没有调用update_command_ui响应函数.

解决方法如下:

第一步:

在对话框类的.cpp文件,添加一个on_wm_initmenupopup入口到消息映射里面

begin_message_map(ctestdlg, cdialog)

//}}afx_msg_map

on_wm_initmenupopup()

end_message_map()

第二步:

在对话框类的.h文件添加消息函数声明.
...   下一页
    摘要:by sebastian sasías 关于作者: 作为一个开发技术解决方案的支撑工具,他已经使用linux几年了。 他的工作包括通过linux控制器件,信号处理,通讯和网络安全。 他精通电子自动化和计算机技术。 他一直致力于在gnu/gpl协议下的自由软件开发。 摘要: 这一篇文章提供了以前linuxfocus 文章关于samba用于在unix-windows异构网络共享资源的方案。 ......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE