📄 subject_35489.htm
字号:
<p>
序号:35489 发表者:菜鸟2003 发表日期:2003-04-07 12:16:48
<br>主题:如何多次更改菜单内容
<br>内容:请教各位大虾:<BR>pMenu->ModifyMenu(ID_FILE_NEW,MF_STRING,(int)hMenu,"新建(&N\tCtrl+N");<BR>pMenu->ModifyMenu(ID_FILE_NEW,MF_STRING,(int)hMenu,"New(&N\tCtrl+N");<BR>为什么只有第一条语句有用?<BR><BR>我要想多次改变, 该如何做?<BR> <BR>
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:wowow 回复日期:2003-04-08 15:21:30
<br>内容:你的参数错了,应该是:<BR>pMenu->ModifyMenu(ID_FILE_NEW,MF_BYCOMMAND,(int)hMenu,"New(&N\tCtrl+N");<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:菜鸟2003 回复日期:2003-04-08 16:19:08
<br>内容:没有啊,该函数默认是MF_BYCOMMAND。请大虾考虑另一种方法。是改变多次哦。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:wowow 回复日期:2003-04-08 16:43:53
<br>内容:你用pMenu->ModifyMenu(ID_FILE_NEW,MF_BYCOMMAND,0,"New(&N\tCtrl+N");试试。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:wowow 回复日期:2003-04-08 17:11:56
<br>内容:通过指定位置的修改可以实现你的要求,如:<BR>pMenu->ModifyMenu(nIndex,MF_BYPOSITION,0,"New(&N\tCtrl+N");<BR>nIndex为该子项在popup中的位置。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:菜鸟2003 回复日期:2003-04-08 20:19:02
<br>内容:对不起。我没有理解什么是“nIndex为该子项在popup中的位置。”我试了<BR> pMenu->ModifyMenu(57600,MF_BYPOSITION,0,"New(&N\tCtrl+N");<BR> pMenu->ModifyMenu(57600,MF_BYPOSITION,0,"新(&N\tCtrl+N");<BR> 不知道对不对 (ID_FILE_NEW 57600) 是不是你所说的 nIndex<BR>我想如果能多次更改的话 应显示 文件->新(&N<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:wowow 回复日期:2003-04-09 08:38:55
<br>内容:假设ID_FILE_NEW是你的popup的第一项(从上往下数),则nIndex = 0,如果是第二项,则nIndex = 1;...依次类推。另外,分隔线要算一项。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:菜鸟2003 回复日期:2003-04-09 14:20:33
<br>内容:BOOL ModifyMenu(UNIT nPosition,UNIT nFlags,UNIT nIDNewItem=0,LPCLSTR lpszNewItem=NULL)<BR>我用 pMenu->ModifyMenu(0, MF_BYPOSITION,0,"New(&N\tCtrl+N");<BR>修改的是菜单的“文件”选项,]<BR>pMenu->ModifyMenu(1, MF_BYPOSITION,0,"New(&N\tCtrl+N"); 是菜单的“编辑(&E)”<BR>而我想要修改的是“文件”下的“新建(&N)\tCtrl+N”,要多次修改。<BR>可是我用<BR>pMenu->ModifyMenu(ID_FILE_NEW,MF_BYCOMMAND,0,"New");<BR>pMenu->ModifyMenu(57600,MF_POPUP ,0,"New");<BR>只能修改一次而已。<BR><BR><BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:wowow 回复日期:2003-04-09 16:08:48
<br>内容:那是你的popup不对,假设"文件"项是你的菜单第一项,则:<BR>pMenu = GetMenu()->GetSubMenu(0);<BR>再假设"新建"项是你的文件项下的第一项,则:<BR>pMenu->ModifyMenu(0, MF_BYPOSITION, 0, "New(&N\tCtrl+N");<BR>就可以起作用了。<BR><BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:菜鸟2003 回复日期:2003-04-09 16:54:47
<br>内容: 大哥你好厉害。崇拜你啊。谢谢了
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -