我有一个功能:
ShowMessage(message As String, type As String)
只有三个有效输入type
- “错误”、“警告”和“成功”。我想这样做,以便在您输入函数并访问type
参数时,会出现一个带有有效输入的下拉列表。
这甚至可能吗?如果我不能用字符串做到这一点,我可以构建一个选项数组或其他东西吗?
我有一个功能:
ShowMessage(message As String, type As String)
只有三个有效输入type
- “错误”、“警告”和“成功”。我想这样做,以便在您输入函数并访问type
参数时,会出现一个带有有效输入的下拉列表。
这甚至可能吗?如果我不能用字符串做到这一点,我可以构建一个选项数组或其他东西吗?
修复一些事情:
Friend Enum MessageType
Success
Warning
Critical ' Error is reserved, use [Error] or something else
End Enum
Sub ShowMessage(message As String, mType As MessageType)
要像你在它是一个字符串时那样使用它,比如一个 Msgbox 标题:
Dim msgType as String = mType.ToString
这转换MessageType.Critical
为"Critical"
并且是我没有在上面使用 [Error] 的原因 - 以避免文本中的括号。
.ToString
仅当变量声明为 MessageType 时才有效,如果mtype
实际上是一个恰好获取 MessageType 值的整数,.ToString 将返回“2”。在这种情况下,转换整数以获得枚举名称:
Dim msgType as String = [Enum].GetName(GetType(mType))
'or
msgType = [Enum].Parse(GetType(MessageType), mType).ToString
当有有限的预定义选项可供选择时,您应该使用枚举
Enum MessageType
[Error],
Warning,
Success
End Enum
(错误必须在方括号中,因为它是关键字)
你的电话是
ShowMessage(message As String, type As MessageType)