按钮的EnableWindow()无效

树先生 2008-10-11 10:34:51
如题 但是ShowWindow()等其他函数还可以起作用 有那些可能的原因?谢谢
...全文
396 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
zqh886 2008-10-11
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 cnzdgs 的回复:]
BEGIN_MESSAGE_MAP(类名, 基类名)
ON_UPDATE_COMMAND_UI(按钮ID, &类名::响应函数名)
END_MESSAGE_MAP()

void 类名::响应函数名(CCmdUI *pCmdUI)
{
pCmdUI->Enable(FALSE);
}

类定义中添加函数声明:afx_msg void 响应函数名(CCmdUI *pCmdUI);
[/Quote]

正确
cnzdgs 2008-10-11
  • 打赏
  • 举报
回复
BEGIN_MESSAGE_MAP(类名, 基类名)
ON_UPDATE_COMMAND_UI(按钮ID, &类名::响应函数名)
END_MESSAGE_MAP()

void 类名::响应函数名(CCmdUI *pCmdUI)
{
pCmdUI->Enable(FALSE);
}

类定义中添加函数声明:afx_msg void 响应函数名(CCmdUI *pCmdUI);
树先生 2008-10-11
  • 打赏
  • 举报
回复
LS能否详细一点 类向导里该按纽对应的消息里好象没有UPDATE_COMMAND_UI
多谢!
zqh886 2008-10-11
  • 打赏
  • 举报
回复
用UPDATE_COMMAND_UI控制。
树先生 2008-10-11
  • 打赏
  • 举报
回复
ShowWindow有效 而EnableWindow无效 还望各位指教!
树先生 2008-10-11
  • 打赏
  • 举报
回复
if(m_nLevel==0) //根据m_nLevel决定按钮是否可用
{
m_checkButton.ShowWindow(false);
m_setButton.ShowWindow(false);
// m_setButton.EnableWindow(false);


}

代码应该没什么问题 关键可能是这个原因
这两个按钮都是在dialogbar上的 没有从dialog继承新的类 而是在MainFrm里添加响应函数的 会不会是因为dialogbar的原因?
zzz822163 2008-10-11
  • 打赏
  • 举报
回复
看看相关代码
palmax 2008-10-11
  • 打赏
  • 举报
回复
贴代码出来帮你分析
zqh886 2008-10-11
  • 打赏
  • 举报
回复
说清楚点或者贴代码出来看看

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧