MsgBox() 如何影响 VB.NET 程序的执行?

How does MsgBox() affect the exection of the VB.NET program?

我有一个旧的 VB6 应用程序,我正在将其修改为 VB.NET 并且以前的程序员设置了这种东西验证 MaskedTextBox 组件时:

MsgBox("My message")
b = True
myField.Focus()

基本上,一个消息框是打开的,如果验证失败,焦点应该转到其他 myField 文本组件。

我将 Enter 事件更改为 GotFocus,现在当验证失败时,我永远停留在当前文本字段上。由于不断出现消息框,我什至无法关闭 window。

我通过将其他语句移动到 MsgBox() 命令上方,解决了 GotFocus 上的问题。

是的,现在运行良好,但真的很想了解 MsgBox 如何影响程序的执行?

来自 MSDN:

Displays a message window, also known as a dialog box, which presents a message to the user. It is a modal window, blocking other actions in the application until the user closes it. A MessageBox can contain text, buttons, and symbols that inform and instruct the user.

我只能猜测它要么用于调试,要么用于向用户发出错误消息。

如果是错误消息,这可能会有所帮助:Call MessageBox from async thread with Form1 as parent