📄 subject_19497.htm
字号:
<p>
序号:19497 发表者:陈旭 发表日期:2002-10-29 13:46:15
<br>主题:关于popupmenu
<br>内容:我作了个多view的程序,一个是ctreeview,一个是显示的view,在显示的view中定义了一个popupmenu,当我在ctreeview中选中某一item时,popupmenu才能有效(菜单中的id才有效),<BR>我用了一个全局的bool变量来控制,但是好像我选中了一个item后使popupmenu有效,以后就一直有效,怎么才能使之在我不选item的时候无效啊<BR>代码如下:<BR>void CSnmpTreeView::OnSelchanged(NMHDR* pNMHDR, LRESULT* pResult) <BR>{<BR> NM_TREEVIEW* pNMTreeView = (NM_TREEVIEW*)pNMHDR;<BR> // TODO: Add your control notification handler code here<BR> CString tempstring;<BR> HTREEITEM hItem=m_TreeCtrl->GetRootItem();<BR> if(m_TreeCtrl->ItemHasChildren(hItem)==0)return;<BR> HTREEITEM CurItem=m_TreeCtrl->GetSelectedItem();<BR> tempstring=m_TreeCtrl->GetItemText(CurItem);<BR> if(CurItem!=NULL)<BR> {<BR> m_PopMenu=TRUE;<BR> }<BR> else<BR> {<BR> m_PopMenu=FALSE;<BR> }<BR> *pResult = 0;<BR>}<BR>好像选中一次item后,就永远不会到else里去执行,那位大虾帮我想想啊
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:我本大梦人 回复日期:2002-10-29 15:06:20
<br>内容:将"if(CurItem!=NULL)<BR> {<BR> m_PopMenu=TRUE;<BR> }<BR> else<BR> {<BR> m_PopMenu=FALSE;<BR> }"<BR>改为"if(tempstring=="popmenu")<BR> {<BR> m_PopMenu=TRUE;<BR> }<BR> else<BR> {<BR> m_PopMenu=FALSE;<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>
回复者:surer 回复日期:2002-10-29 15:11:34
<br>内容:问题是我要操作很多item,哪能直接等
<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>回复者:我本大梦人 回复日期:2002-10-29 15:54:48
<br>内容:那你每个item的响应是否都不同呢?如果都不同,就用switch ...case吧,如果只有一个不同,那就用'!='不就得了
<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 + -