读书人

如何样判断焦点在PANEL上

发布时间: 2012-02-11 09:51:34 作者: rapoo

怎么样判断焦点在PANEL上
比如程序里有个PANEL鼠标点击后,PANEL上我会画个红边,我用勾子截获所有滚轮事件,如果焦点在PANEL上会做一些事情,现在如果我在SHOW另外一个界面,焦点就应该不在PANEL上了,此时滚轮就不应该好用了,我用PANEL->Focused来判断焦点是否在这里,似乎不好用,请问按照我这样的逻辑,我怎么处理才好呢,谢谢.

[解决办法]
假设PANEL所在的窗体为InputForm

C/C++ code
HWND hWnd;    hWnd = GetForegroundWindow();       // 得到当前激活窗口    if(hWnd!=InputForm->Handle) // 如果不是PANEL所在的窗体InputForm    {              进行鼠标事件响应              ... ...            //SetForegroundWindow(InputForm);//设置PANEL所在的窗体InputForm为最顶层窗体                //InputForm->PANEL->SetFocus();//设置焦点    } 

读书人网 >C++ Builder

热点推荐