发送到另一个窗口的鼠标移动消息不执行任何操作
Mouse movement message being sent to another window is doing nothing
所以基本上我有一个程序,它制作了一个位于另一个窗口上的透明窗口。我正在尝试使它成为当您在该透明窗口中移动鼠标时,它会像您在它下面的窗口中移动鼠标一样。
我已经尝试在线查看许多其他教程,但没有一个有效。最重要的是,我尝试将鼠标移动到该窗口下方的窗口时发送消息,但没有任何反应(即使它检测到我的鼠标在移动(。为了确保我的代码没有错,我还尝试了相同的策略,只要点击鼠标就会发送消息,效果很好。
这是我尝试过但不起作用的代码:
case WM_MOVE:
{
ShowCursor(false);
SetForegroundWindow(otherWnd);
SendMessage(otherWnd, message, wParam, lParam);
return 0;
}break;
otherWnd 是透明覆盖层下方的窗口,此代码来自 WindowProc(( 内部的 switch 语句;
感谢您的帮助!
使用 SendInput 函数,而不是尝试直接发送键盘和鼠标消息。
此外,WM_MOVE在移动窗口本身(即标题栏拖动(时发送,而不是在鼠标移动时发送,WM_MOUSEMOVE消息指示鼠标移动。
我试图做到这一点,当您在该透明窗口中移动鼠标时,它会像您在它下面的窗口中移动鼠标一样。
如果您的窗口实际上是透明的,操作系统将自动为您处理。
让您的窗口过程处理WM_(NC)HITTEST
消息,以返回应"通过"的任何坐标的HTTRANSPARENT
。
相关文章:
- 在执行其他功能的同时播放动画(LED矩阵和Arduino/ESP8266)
- boost::进程间消息队列引发错误
- C++,系统无法执行指定的程序
- 使用C++中的模板和运算符重载执行矩阵运算
- 创建一个函数以在输入为负数或零时输出字符串.第一次执行用户定义的函数
- 执行函数时导致崩溃的变量
- 在线编译器中的分段C++没有打印消息
- C++错误消息*成员参考.**初学者*
- 无论条件是否为true,if总是在c++中执行
- 当函数模板参数是具有默认参数的类模板时,函数模板参数的推导如何执行
- 在C++中对T*类型执行std::move的意外行为
- 在createdialog创建的窗口中捕获用于编辑控件的OnMouseMove消息
- 使用QProcess执行命令,并将结果存储在QStringList中
- 如何在没有信号的情况下从C++执行QML插槽
- 如何确认我的constexpr表达式实际上已经在编译时执行
- 发送到另一个窗口的鼠标移动消息不执行任何操作
- 如何从命令行运行可执行文件时启用系统错误消息
- chrome本机消息传递:本机主机可执行文件能否以参数开头
- C++程序在执行时崩溃且没有错误消息 con = 驱动程序>连接(主机、用户、通行证);
- 使用boost::asio执行单播消息传递