- ベストアンサー
漢字キーの表現
漢字キーを自動入力したいのですが表現方法がわかりません。 アルファベットや数字キー等以外はどのように表現したらいいのでしょうか。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
キーボードの入力(特に漢字等の特殊キー)は、完全にOS依存なので、どのOSか指定が無いと調べようがありません。 それと、 「(結果に関係なく、とにかく)漢字キーを入力したい」なのでしょうか? 「自動で漢字入力モードに切り替えたい(そのために『漢字キーを押す』のと同じ操作をしたい)」なのでしょうか? 後者の場合、キー入力などせずに、直接制御する方法もあります。 「IME 制御」「入力モード 制御」等で検索してください。
その他の回答 (2)
- m-take0220
- ベストアンサー率60% (477/782)
OSはWindowsでよろしいですか? setKeybrdが何を処理しているかわからないと、何を渡せばいいのか調べようがないと思いませんか? SendInputに渡すINPUT構造体に値を設定するのであれば、仮想キーコードとしてVK_KANJIというものがあります。これでうまくいくかどうかは、やってみたことがないのでわかりませんが。キーボードのデバイスドライバによって、キーの組み合わせが違う場合もありますし。
お礼
回答有難う御座います。 OSはWindowsでしたので、ご指摘通りVK_KANJIを使ってうまく動作させることが出来ました。
ファンクションキー や デリートキー など 一つ一つ表現するか 標準タイプキー カーソルキー エスケープキー ファンクションキー シフト・オルト・コントロール・カタカナひらがなキー とまとめるか。
お礼
回答有難う御座います。 たとえば Rキー をセットするような場合、 VOID setKeybrd( LPINPUT lpKey, WORD wVKey, BOOL bKeyDown ) {・・・・・・・・} INPUT Key[ 4 ]; LPINPUT lpKey = Key; setKeybrd( lpKey++, 'R', TRUE ); ・・・・・・・・ というようになるようですが、漢字キー等は 'R' のような簡単な表現方法がないということでしょうか。 私は基本的な知識がないようで、回答されたカタカナひらがなキー等の表現方法もわかりません。
お礼
回答有難う御座います。 OSはWindowsで、後者の場合でしたので「IME 制御」を検索して方法を見つけることができました。