如何使用 Select Case 基于 MessageBox 输入给出输出?
Posted
技术标签:
【中文标题】如何使用 Select Case 基于 MessageBox 输入给出输出?【英文标题】:How to give output based on MessageBox input with Select Case? 【发布时间】:2013-05-29 12:53:19 【问题描述】:如何根据 MessageBox 输入给出输出?
ie. 我有一个应用程序,它在单击按钮时显示 MessageBox。 MessageBox 具有 Abort、Retry 和 Ignore 按钮。 我想在单击每个按钮时做到这一点,我想显示一个带有不同文本的 MessageBox。
例如:在单击 Abort 时,我想显示一个带有“Aborted”文本的 MessageBox。 单击重试时,我想显示一个带有“重试”文本的消息框。 单击忽略时,我想显示一个带有文本“已忽略”的 MessageBox。
我的尝试是:(我收到一个错误:Microsoft.VisualBasic.dll 中出现“System.InvalidCastException”类型的第一次机会异常。附加信息:从字符串“Input”到“Integer”类型的转换是无效。 如果有这个异常的处理程序,程序可以安全地继续。) 公开课形式1 Private Sub Input_Click(sender As Object, e As EventArgs) 处理 Input.Click Dim a As DialogResult = MsgBox("点击任何东西。", "Input", MessageBoxButtons.AbortRetryIgnore)
Select Case a
Case Windows.Forms.DialogResult.Abort
MsgBox("Aborted", "Abort")
Case Windows.Forms.DialogResult.Retry
MsgBox("Retried", "Retry")
Case Windows.Forms.DialogResult.Ignore
MsgBox("Ignored", "Ignore")
End Select
End Sub
结束类
PS:最好使用 Select Case。
【问题讨论】:
【参考方案1】:你来了,伙计。
Dim a As DialogResult = MessageBox.Show("Click anything.", "Input", MessageBoxButtons.AbortRetryIgnore)
Select Case a
Case Windows.Forms.DialogResult.Abort
Console.WriteLine("Aborted")
Case Windows.Forms.DialogResult.Cancel
Console.WriteLine("Cancel")
End Select
【讨论】:
:D 成功了!奇怪的是你必须使用 MessageBox.Show。 MsgBox 曾经为我工作。 MsgBox() 返回一个整数。 MessageBox.Show() 返回一个 DialogResult。以上是关于如何使用 Select Case 基于 MessageBox 输入给出输出?的主要内容,如果未能解决你的问题,请参考以下文章
使用C#如何表达VBA“select case control.ID”
oracle如何在CASE WHEN ELSE语句中使用select语句?
如何使用 SELECT CASE 和 TO 使用 INTEGER
如何在 SELECT 查询中使用聚合函数和 CASE WHEN THEN