私は機能を持っています:
ShowMessage(message As String, type As String)
type
「エラー」、「警告」、「成功」の 3 つの有効な入力しかありません。type
関数を入力してパラメーターに到達すると、有効な入力がドロップダウンに表示されるようにしたいと思います。
これは可能ですか?文字列でそれができない場合、オプションの配列などを作成できますか?
私は機能を持っています:
ShowMessage(message As String, type As String)
type
「エラー」、「警告」、「成功」の 3 つの有効な入力しかありません。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" を返します。その場合、整数をキャストして Enum Name を取得します。
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)