繁体   English   中英

VB.net 中的 MessageBox 持久性

[英]MessageBox persistence in VB.net

我正在使用MessageBox向用户提供一些信息,但是当弹出这样的框时,我希望它阻止对主 window 的访问。 因此,在用户单击“确定”之前,他们应该无法单击(甚至关注)其下方的 window。

有人知道怎么做这个吗? 我注意到MessageBox的功能很少,所以也许我什至不得不为此使用不同的 object。

一个快速而肮脏的解决方案可能是一个对话框(Project->Add Windows Form->Dialog)。 这为您提供了 MessageBox 的视觉可扩展性。

您可以调用 MessageBox 的 ShowDialog 方法,它当然会阻止对父 window 的访问。

当然还有其他方法。

例子:

' This is your Dialog you created by going Project->Add Windows Form->Dialog
Public Class MessageBoxDialog

  Public Overloads Sub ShowDialog(ByVal message As String)

    Me.txtMessage.Text = message

    ShowDialog()

  End Sub
End Class

' This is the form you want to call the message box on
Private Sub btnShowMsgBox_Click(sender As System.Object, e As System.EventArgs) _
                                Handles btnShowMsgBox.Click
    Dim messageBox As New MessageBoxDialog
    messageBox.ShowDialog("This is another way to show a MsgBox but allows greater extensibility.")
End Sub

就在我在这里发布之后,我的朋友想出了答案。 通过调用MessageBox.Show(mf, "text") ,其中 mf 是主窗体,只要没有单击 OK 按钮,mf 就会被禁用。 我想这个问题毕竟有点愚蠢,但我希望如果他们遇到同样的问题,它可以帮助其他人。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM