dポイントプレゼントキャンペーン実施中!

電話帳のようなものを作成しております。
名前をローマ字入力で入れたときの振り仮名(カタカナでも平仮名、半角もOK)を取得する方法は無いでしょうか。

Edit1で名前を入力するとLabel1->Captionにふりがなを入れたいのです・・・。

環境;Windows98SE / C++Builder V.4

何分、まだまだ初心者の領域を出られない状態ですので
どなたかヒントになるようなことでも構いません。
よろしくお願いします。

A 回答 (3件)

確定後の漢字列からふりがなを取得するのは辞書検索する以外に方法はないと思います。



「変換中に変換元のかな文字列を取得する」と言う仕様ならImmGetCompositionString()で可能です。

LONG ImmGetCompositionString(
HIMC hIMC,
DWORD InfoType,
LPVOID Buf,
DWORD BufSize);
InfoTypeにRESULTREADSTRを指定すると「最後に変換を行った際に入力された文字列を1バイトカタカナで表した文字列をbufに返す。戻り値は、文字列のバイトサイズ」という動作になります。
1バイトカナで返されるので、全角変換が必要ならやってください。

詳しくはMSDNでご確認を!
    • good
    • 0
この回答へのお礼

早速の回答ありがとうございます。
欲しかったのは「変換中に変換元のかな文字列を取得する」です。
ImmGetCompositionString()でやってみます。
ありがとうございました。

お礼日時:2003/06/20 12:59

> 確定後の漢字列からふりがなを取得するのは辞書検索する以外に方法はないと思います。



有力な手段は下記の2つです。

(1) KAKASIを使用する。

http://kakasi.namazu.org/

COMインターフェイスが提供されていないので、ラッパーでも作らないと、VBからは使いにくいですが、C/C++のスキルがあれば問題ないでしょう。


(2) ExcelのApplication.GetPhonetic メソッド

Excel 2000以上で使用できます。
こちらは言うまでもなく、COMベースです。


※ どちらの方法も、固有名詞など、辞書にない語、一意の読み方が特定できない語は意図通りの変換できない場合があります。

参考URL:http://kakasi.namazu.org/
    • good
    • 0
この回答へのお礼

早速の回答ありがとうございます。
確定後の漢字列からふりがなを取得することも出来るのですね。
知りませんでした。ご教授いただいたWebを早速勉強してみます。
ありがとうございました。

お礼日時:2003/06/20 13:02

年賀状ソフトは名簿を作成すると、氏名にカタカナと漢字に記録されるものでは不満ですか、


名簿の作成には効率がよいと思います。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!