none
控件的visible=false之后,是不是该控件就接收不到系统消息了 RRS feed

  • 问题

  •       我建了一个基于cstatic的类,对类添加了wm_lbuttondown消息响应函数处理(afxmessagebox(“pressed");),然后在对话框上添加一个static控件,首先我设置该控件的visible=true,那么,在运行时候,该控件可以显示,而且点击控件,可以弹出pressed.然后我设置visible=false,之后,该控件在对话框上不可以显示,我点击该空间所在位置,也没有任何反应。我的问题是,当控件隐藏之后,即visible=false时候,那么它就不能接收系统消息响应了?还是其他的原理,请高手解释一下。

        谢谢

    2011年5月2日 9:44

答案

  • 控件隐藏以后默认是不响应的,如果您希望隐藏的时候仍然能够响应您的点击,您可以在PreTranslateMessage中处理WM_LBUTTONDOWN消息,利用CRect::PtInRect();判断点击的位置在您的控件区域之内。


    Visual C++ enthusiast, like network programming and driver development. At present is being engaged in the WinCE/Windows Mobile platform embedded development.
    • 已标记为答案 神秘人 2011年5月5日 7:53
    2011年5月4日 15:41
    版主

全部回复

  • 控件隐藏以后默认是不响应的,如果您希望隐藏的时候仍然能够响应您的点击,您可以在PreTranslateMessage中处理WM_LBUTTONDOWN消息,利用CRect::PtInRect();判断点击的位置在您的控件区域之内。


    Visual C++ enthusiast, like network programming and driver development. At present is being engaged in the WinCE/Windows Mobile platform embedded development.
    • 已标记为答案 神秘人 2011年5月5日 7:53
    2011年5月4日 15:41
    版主
  • 谢谢您的回答

    2011年5月5日 7:53