【发布时间】:2010-03-29 22:37:50
【问题描述】:
意识到我自己的理由太可疑了,我现在换了一种方式来解决这个问题。但我还是很好奇……
出于怀旧、熟悉和懒惰的原因,我正在使用 MFC 编写 UI。出于可疑的原因(好像这些还不够),我想将(双击)单击事件添加到组框。自然,组框包含了一些东西——事实上,它包含另一个静态项,我可以成功地向其中添加一个(双击)事件处理程序。
有什么原因我不能让事件处理程序来处理我的组框上的点击,就像我可以为简单的文本静态项做的一样?在控件中、控件中或附近单击的次数不会触发事件。
注意 - 我已通读 http://www.codeproject.com/KB/static/staticctrl_tut.aspx 并尝试响应 ON_STN_... 事件和 ON_BN_... 消息,设置通知样式(BS_NOTIFY 出现在 rc 文件中)...遗漏了一些东西 - 它是什么?甚至可能吗?我用谷歌搜索的大部分内容都表明它是......但没有明确的 C++/MFC 答案。
自从第一次发布这个问题以来,我发现了对 WM_NCHITTEST 消息的引用,并提示您必须为此消息创建一个处理程序以覆盖组框默认行为,即使用 HT_TRANSPARENT 进行响应......尽管它具有透明属性在 ClassWizard 中设置为 false。嗯。谁能确认这确实是关键?
【问题讨论】:
标签: c++ mfc event-handling groupbox