单击开始按钮时,函数RunB()将执行while循环。我需要使用停止按钮中途中断while循环执行。在调用函数中打破一个while循环
switch (msg)
{
case WM_CREATE:
CreateWindow(TEXT("button"), TEXT("Browser"),
WS_VISIBLE | WS_CHILD,
30, 100, 80, 25,
hwnd, (HMENU)1, NULL, NULL);
CreateWindow(TEXT("button"), TEXT("Stop"),
WS_VISIBLE | WS_CHILD,
30, 200, 80, 25,
hwnd, (HMENU)2, NULL, NULL);
break;
case WM_COMMAND:
if (LOWORD(wParam) == 1) {
Obj.RunB();
}
break;
if (LOWORD(wParam) == 2) {
//Code to break the while loop
}
break;
代码调用的函数RunB:
void RunB(){
while(n<15){
//Some statements here:
}
如何打破使用停止按钮while循环?
不会发生,直到您将头围绕基于事件的Windows应用程序模型。给自己一份Petzold的[ProgrammingWindows®](https://www.amazon.com/dp/157231995X)的副本。 – IInspectable
为此,您必须在单独的线程中运行while循环。 –
公平起见,通过在while循环中调用'PeekMessage',可能没有线程。但没有理想。 –