掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
テキストボックスの漢字をひらがなに戻すには (ID:108689)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
とりあえず、VB6/VBAと仮定して回答します。 VB.NETの場合は、適宜読み替えてください。 > 3 メニューから「再変換(V)」を選択して変換リストを呼び出し、 変換リストを表示させるだけの方法と、 リストを表示させず、変換結果だけを得る方法とがあります。 まずは前者の、変換リストを表示させる方法から———。 案1) RichTextBoxに対して、EM_RECONVERSIONメッセージを送信する。 案2) 再変換メッセージを使う。 案1は、下記が参考になるでしょう。比較的容易に実装できると思います。 http://vbvbvb.com/jp/gtips/0451/gSendMessageEmReconversion.html ただし、RichTextBoxでしか使えないという制限が付きます。 案2の方法は、OS共通の再変換メッセージを使う方法と、 IME固有の再変換メッセージを使う方法とがあります。 以前は、古市さんのサイト(Stadt Homepage)に解説があったのですが、現在はサイトが 閉鎖されているようなので、Internet Archiveの方を参照してみてください。 http://web.archive.org/web/20011005222104/www.netlaputa.ne.jp/~stadt/vb/p22_imereconv/imereconv.htm http://web.archive.org/web/20011102034008/www.netlaputa.ne.jp/~stadt/vb/t12_ime/reconvert.htm ——つづいて後者の、再変換結果を直接得る方法です。 案3) IFELanguageインターフェイスのGetPhoneticメソッドを使う。 案4) Microsoft ExcelのGetPhoneticメソッドを使う。 案3は、MS-IME98以上に実装されている、読み仮名取得機能です。 http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnime/html/felang2fnc.asp ただしこの方法を使う場合は、別途タイプライブラリを作成する必要があります。 # 下記は、大昔に作成した拙作のライブラリですが、未完のまま放置状態…。 # http://www.ocv.ne.jp/~oratorio/windev/vb/BS_MSIME.LZH 案4は、Excel 2000以上に実装されている、読み仮名取得機能です。 具体的には、以下のようにして利用します。 Set X = CreateObject("Excel.Application") MsgBox X.GetPhonetic("魔界の仮面弁士") Set X = Nothing この機能を使うには、Excel 2000またはExcel 2002が必要です。(Excel 2003は未検証) # ちなみにExcel 97の場合は、PhoneticオブジェクトやPHONETICワークシート関数にて、 # 読み仮名を得る事ができますが、これは既に入力された読み仮名を得るものであり、 # GetPhoneticとは意味が異なります。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.