2
我需要一个窗口,当我点击它时不会激活,但应该在别处反应正常。正常情况下,我的意思是,如果它上面有一个按钮,我点击它应该执行点击按钮并调用点击功能(或事件处理或以往)。所以它应该是一个普通的窗口,除非它在与它进行交互时不会被激活。 我知道你可以用消息过滤器或钩子做到这一点,但有没有自动执行此操作的窗口样式?没有激活窗口样式
这是针对windows的。
谢谢!
我需要一个窗口,当我点击它时不会激活,但应该在别处反应正常。正常情况下,我的意思是,如果它上面有一个按钮,我点击它应该执行点击按钮并调用点击功能(或事件处理或以往)。所以它应该是一个普通的窗口,除非它在与它进行交互时不会被激活。 我知道你可以用消息过滤器或钩子做到这一点,但有没有自动执行此操作的窗口样式?没有激活窗口样式
这是针对windows的。
谢谢!
您是否试过WS_EX_NOACTIVATE
extended window style?
使用此样式创建的顶级窗口在用户单击时不会成为前景窗口。当用户最小化或关闭前景窗口时,系统不会将此窗口置于前台。
要激活窗口,请使用
SetActiveWindow
或SetForegroundWindow
函数。
否则,如果你想要的东西,不这样做,你将需要处理WM_MOUSEACTIVATE
message并返回MA_NOACTIVATE
。
我会告诉你一些示例代码,但我不确定你是否试图在C++或C#中执行此操作。哪一个是你的目标语言? – 2011-02-28 09:51:17
我可以在c/C++中完成它,C#它不需要 – ghet 2011-02-28 09:58:43
是的,你可以用任何语言来完成它。你是说你不在乎你的程序是用哪个编写的?你知道如何设置扩展窗口样式并处理Windows消息吗? – 2011-02-28 10:02:13