基本上我希望我的编码做的是在"激活"时执行几行代码。按下按钮。那部分很容易。困难的部分是让线条一遍又一遍地执行,直到" Deactivate"按下按钮。
switch (message)
{
case WM_CREATE:
CreateWindow(
TEXT("button"),TEXT("Activate"),
WS_VISIBLE | WS_CHILD,
25,
30,
100,
50,
hwnd, (HMENU) 1, NULL, NULL
);
CreateWindow(
TEXT("button"),TEXT("Deactivate"),
WS_VISIBLE | WS_CHILD,
150,
30,
100,
50,
hwnd, (HMENU) 2, NULL, NULL
);
break;
case WM_COMMAND:
if(LOWORD(wParam) == 1)
{
/*DO STUFF*/
}
if(LOWORD(wParam) == 2)
{
/*STOP DOING STUFF*/
}
break;
}
我尝试创建while(i == true)
,但这不起作用:
bool i = false;
case WM_COMMAND:
if(LOWORD(wParam) == 1)
{
i = true;
while(i == true)
{
/*DO STUFF*/
}
}
if(LOWORD(wParam) == 2)
{
i = false;
}
break;
如果我可以帮助解决这个问题,我们将不胜感激。
--- --- EDIT
我可能应该告诉你/*DO STUFF*/
是什么。我正在制作一个自定义宏点击器。我已经有一个工作了,但我对它不满意,因为它使用cout <<
作为菜单。在那个版本上,我使用这段代码:
while(1)
{
if(GetKeyState(0x43) & 0x8000) /*This if() statement auto clicks whenever "C" is held*/
{
usleep(13625);
mouse_event(MOUSEEVENTF_LEFTDOWN, NULL, NULL, 0, 0);
mouse_event(MOUSEEVENTF_LEFTUP, NULL, NULL, 0, 0);
}
}
有没有办法在while(1)语句中激活和停用它?