Der*_*rek 6 winapi qt focus click always-on-top
情况:无边框QDialog在其他应用程序之上成功保留.
问题是当点击这个永远在顶部的应用程序窗口时,会发生以下情况:
是否有可能在单击此永远在线的非活动和未聚焦的应用程序窗口时,
我正在使用Qt,但使用本机Windows API没有问题.
我尝试了以下Qt windowFlag:
Qt::WindowDoesNotAcceptFocus 但它不起作用:永远在线的应用程序被激活,专注.Qt::WindowTransparentForInput总是在顶部的应用程序对点击非常透明:没有激活而没有集中注意力,但遗憾的是,点击时不会触发按钮.使用Windows标志(#include <qt_windows.h>)单击它时,可以使窗口不可激活且不可聚焦.创建窗口并显示后,必须使用以下内容:
HWND winHandle = (HWND)winId();
ShowWindow(winHandle, SW_HIDE);
SetWindowLong(winHandle, GWL_EXSTYLE, GetWindowLong(winHandle, GWL_EXSTYLE)
| WS_EX_NOACTIVATE | WS_EX_APPWINDOW);
ShowWindow(winHandle, SW_SHOW);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3375 次 |
| 最近记录: |