文字列からFontStyleの変換モジュール
VB2005でテキストからFontStyleに型変換する方法が分からなかったので、力技で解決してみた。以下そのコード。
Private Function ConvertFontStyle(ByVal FontStyleString As String) As FontStyle '// フォントスタイル文字列をフォントスタイルに変換 // If IsNumeric(FontStyleString) Then Select Case Val(FontStyleString) Case 0 Return FontStyle.Regular Case 1 Return FontStyle.Bold Case 2 Return FontStyle.Italic Case 3 Return FontStyle.Bold Or FontStyle.Italic Case 4 Return FontStyle.Underline Case 5 Return FontStyle.Bold Or FontStyle.Underline Case 6 Return FontStyle.Italic Or FontStyle.Underline Case 7 Return FontStyle.Bold Or FontStyle.Italic Or FontStyle.Underline Case 8 Return FontStyle.Strikeout Case 9 Return FontStyle.Bold Or FontStyle.Strikeout Case 10 Return FontStyle.Italic Or FontStyle.Strikeout Case 11 Return FontStyle.Bold Or FontStyle.Italic Or FontStyle.Strikeout Case 12 Return FontStyle.Underline Or FontStyle.Strikeout Case 13 Return FontStyle.Bold Or FontStyle.Underline Or FontStyle.Strikeout Case 14 Return FontStyle.Italic Or FontStyle.Underline Or FontStyle.Strikeout Case 15 Return FontStyle.Bold Or FontStyle.Italic Or FontStyle.Underline Or FontStyle.Strikeout End Select Else Select Case FontStyleString Case "Regular" Return FontStyle.Regular Case "Bold" Return FontStyle.Bold Case "Italic" Return FontStyle.Italic Case "Bold, Italic" Return FontStyle.Bold Or FontStyle.Italic Case "Underline" Return FontStyle.Underline Case "Bold, Underline" Return FontStyle.Bold Or FontStyle.Underline Case "Italic, Underline" Return FontStyle.Italic Or FontStyle.Underline Case "Bold, Italic, Underline" Return FontStyle.Bold Or FontStyle.Italic Or FontStyle.Underline Case "Strikeout" Return FontStyle.Strikeout Case "Bold, Strikeout" Return FontStyle.Bold Or FontStyle.Strikeout Case "Italic, Strikeout" Return FontStyle.Italic Or FontStyle.Strikeout Case "Bold, Italic, Strikeout" Return FontStyle.Bold Or FontStyle.Italic Or FontStyle.Strikeout Case "Underline, Strikeout" Return FontStyle.Underline Or FontStyle.Strikeout Case "Bold, Underline, Strikeout" Return FontStyle.Bold Or FontStyle.Underline Or FontStyle.Strikeout Case "Italic, Underline, Strikeout" Return FontStyle.Italic Or FontStyle.Underline Or FontStyle.Strikeout Case "Bold, Italic, Underline, Strikeout" Return FontStyle.Bold Or FontStyle.Italic Or FontStyle.Underline Or FontStyle.Strikeout End Select End If End Function