VB.NET

VB.NET でふりがな機能を実装する

  • POST
経緯 最近、周りで VB.NET を使っている人が複数人出てきた恐らく2020年にWindows7 サポート終了となるため VB6 => VB.NET へのコンバージョンの案件が増えていると思われる そのため、以前行った際に苦労したふりがな機能について備忘録として残しておくことにする 実際のコード ふりがな取得機能の実装クラス 以下のふりがなに対応(半角および全角英数はそのまま取得) ひらがな 全角カナ 半角カナ Option Strict Off Option Explicit On Imports System.Runtime.InteropServices Delegate Function fncDelegate(ByVal hWnd As Integer, ByVal uMsg As Integer, ByVal wParam As Integer, ByVal lParam As Integer) As Integer ''' <summary> ''' 変換イベントクラス ''' </summary> Public Class ConvertedEventArgs Inherits EventArgs ''' <summary> ''' 変換イベントクラスのコンストラクタ ''' </summary> ''' <param name="f">ふりがな文字列</param> ''' <param name="r">変換後文字列</param> Public Sub New(ByVal f As String, ByVal r As String) Furigana = f Result = r End Sub Public ReadOnly Property Furigana() As String Public ReadOnly Property Result() As String End Class ''' <summary> ''' 自動ふりがな取得クラス ''' </summary> Public Class Imecomp Private m_TxtSrcControl As Control Private m_TxtDestControl As Control Private WithEvents M_MsgListner As MsgListner Private ReadOnly m_StrConvMode As Integer ''' <summary> ''' ふりがな取得完了通知イベント ''' ''' ふりがな取得が完了したことを通知する ''' </summary> ''' <param name="txtSrc">ふりがな取得対象テキストボックス</param> ''' <param name="txtDest">ふりがな出力対象テキストボックス</param> ''' <param name="e">変換イベントクラス</param> Public Event Converted(ByVal txtSrc As System.