每次左键单击 window 时如何让消息框出现?
How can I get a message box to appear every time I left-click in a window?
我想用鼠标左键打开一个带有“left”字样的消息框。
所以我用了wndproc和MK_LBUTTON,但是wndproc函数写了代码,但是WinMain部分不知道怎么写代码
我不想打开一个window,但是当我在Google上搜索时,我只有一个代码示例只显示一个window。
(打开window并没有解决问题..)
我该怎么办?帮助
(如果你写的尽量多了,还是不懂问题,请问我,我会一一解答。
而且我英语不好,所以我写了一个翻译器。)
我的代码(试试)
#include <windows.h>
LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance
, LPSTR lpszCmdParam, int nCmdShow)
{
//???
}
LRESULT CALLBACK WndProc(HWND hWnd, UINT iMessage, WPARAM wParam, LPARAM lParam)
{
switch (iMessage) {
case MK_LBUTTON:
MessageBox(hWnd, TEXT("left"),TEXT("message"), MB_OK);
}
return(DefWindowProc(hWnd, iMessage, wParam, lParam));
}
MK_LBUTTON
不是消息,需要抓取WM_LBUTTONDOWN
、WM_LBUTTONUP
或WM_LBUTTONDBLCLK
。
这些消息仅发送到单击鼠标的活动window。如果你想捕捉所有 windows 的点击,那么你需要使用 mouse hook and pump messages.
我想用鼠标左键打开一个带有“left”字样的消息框。
所以我用了wndproc和MK_LBUTTON,但是wndproc函数写了代码,但是WinMain部分不知道怎么写代码
我不想打开一个window,但是当我在Google上搜索时,我只有一个代码示例只显示一个window。 (打开window并没有解决问题..)
我该怎么办?帮助 (如果你写的尽量多了,还是不懂问题,请问我,我会一一解答。
而且我英语不好,所以我写了一个翻译器。)
我的代码(试试)
#include <windows.h>
LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance
, LPSTR lpszCmdParam, int nCmdShow)
{
//???
}
LRESULT CALLBACK WndProc(HWND hWnd, UINT iMessage, WPARAM wParam, LPARAM lParam)
{
switch (iMessage) {
case MK_LBUTTON:
MessageBox(hWnd, TEXT("left"),TEXT("message"), MB_OK);
}
return(DefWindowProc(hWnd, iMessage, wParam, lParam));
}
MK_LBUTTON
不是消息,需要抓取WM_LBUTTONDOWN
、WM_LBUTTONUP
或WM_LBUTTONDBLCLK
。
这些消息仅发送到单击鼠标的活动window。如果你想捕捉所有 windows 的点击,那么你需要使用 mouse hook and pump messages.