我目前正在我的 C 程序中通过消息框向用户提供信息,但该消息框出现在我的应用程序的所有其他形式的后面。
如何将其向前显示,以便它出现在我的所有表单前面,或设置其父表单?
这是我当前用于显示消息框的代码:
MessageBox(0,error_msg, "Error - No Algorithm", MB_OK );
最佳答案
它现在出现在所有表单后面的原因是因为您没有指定所有者窗口。这会导致它直接出现在桌面窗口的顶部。问题是您的其他窗口已经覆盖了桌面窗口,因此它们也很乐意继续覆盖您的消息框。
正如您所怀疑的,解决方案是将您的窗口之一指定为消息框的所有者。您可以通过将它们的窗口句柄 (HWND
) 指定为函数的第一个参数来实现这一点:
MessageBox(hWnd, // the window handle for your owner window
error_msg, // the message to be displayed
"Error - No Algorithm", // the title
MB_OK); // flags indicating contents and behavior
documentation提供附加信息。
关于c - 如何使我的 MessageBox 弹出在所有表单的顶部?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5455111/