- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:【keybd_event】について)
【keybd_event】で半角カナ入力を実現する方法
このQ&Aのポイント
- VB6,Windows XPで動作するAPを作成中です。現在、半角カナ入力を行うために【keybd_event】を使用したいと思っています。カナが表示されたイメージコントロールをクリックすると、対応するカナをテキストボックスに表示したいですが、【SendKeys】を使用せずに実現したいです。【keybd_event】を使用して半角カナを表示する方法を教えてください。
- 【keybd_event】を使用して半角カナを表示する方法を教えてください。現在、半角カナ入力を行うAPを作成しています。フォーム上にイメージコントロールとテキストボックスがあり、イメージコントロールをクリックすると対応するカナをテキストボックスに表示したいのですが、【SendKeys】を使わずに実現したいと思っています。【keybd_event】を使って半角カナを表示する方法について教えてください。
- VB6,Windows XPで動作するAPを作成しています。現在、半角カナ入力を行うために【keybd_event】を使用したいと考えています。イメージコントロールをクリックすると、対応するカナをテキストボックスに表示したいのですが、【SendKeys】を使用するのは避けたいです。【keybd_event】を使用して半角カナを表示する方法について教えていただけますか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
普通に文字列操作するのもなんら変わりはないですが。 Text1 = Left(Text1, Text1.SelStart) & "カ" & Mid(Text1, Text1.SelStart + Text1.SelLength + 1) >その動きを実現するには、文字列連結での制御より、 >SendKeysやkeybd_eventを使用する方が簡単だと思ったからなのです。 入力対象のコントロールにフォーカスを当てたりIMEをいじったりするほうが、よっぽど動きがあいまいで面倒かと思いますけど。
その他の回答 (1)
- taka_tetsu
- ベストアンサー率65% (1020/1553)
回答No.1
>フォーム上に、カナが表示されたイメージコントロールとテキストボックスがあり、 >イメージコントロールをクリックされた時に、対応するカナをテキストボックスに表示したいのですが、 >【SendKeys】は使用したくありません。 なぜこの処理でSendKeysやkeybd_eventが必要になるのでしょう? イメージコントロールのクリックイベントで Text1 = "アイウエオ" (実際には半角カナ) って感じで代入するだけだと思うんですけど。
質問者
補足
レスありがとうございます。 勿論その方法は最初に考えましたが、 既に「アイウエオ」と文字列が入力されていた場合で、「ウエオ」が選択されているとして、「カ」を入力すると「アイカ」となるのが自然ですよね?(選択されている文字列は上書きされるのが普通だから) その動きを実現するには、文字列連結での制御より、SendKeysやkeybd_eventを使用する方が簡単だと思ったからなのです。 意味分かりましたでしょうか? 説明下手ですみません。
お礼
そういうやり方は思いつきませんでした。 やってみます。ありがとうございました。