プロが教えるわが家の防犯対策術!

IMEソフトキーボードのようなものを作っています。
フォーム1にテキストボックスがあり、フォーム2をソフトキーボード。というように作りたいと思っているのですが問題があります。
コマンドボタンを押すごとに1文字ずつ送るような作りになっているのですが、1文字ごとにテキストボックスからコマンドボタンにフォーカスが移るため、2文字以上の文字列の変換ができないのです。VB的に無理なのかもしれないですが、IMEソフトキーボードのようにテキストボックスにフォーカスをセットしたままの文字入力を出来ないでしょうか?ちなみにkeybd_eventを使っています。
時間がありましたら、ご教授のほどよろしくお願いします。

A 回答 (3件)

うーん、文字を送るたびにプログラム側でフォーカスをテキストボックスに戻せばいいんじゃないですか?


それか最初からテキストボックスをモーダルウィンドウとして開くか。

この回答への補足

ご回答ありがとうございます。
説明不足ですいません。コマンドボタンを押したときにセットフォーカスでテキストボックスにフォーカスを移しているのですが、ボタンを押した時点で一度フォーカスがボタンに移ってテキストボックスから離れてしまうので1文字ごとに自動で確定してしまうんです。要はコマンドボタンを押すと変換しないままでエンターを押したのと同じ状態になってしまうんです。それをどうにかできればと思ったんですが。
モーダルウィンドウっていうのははじめて聞いたので調べてみます。

補足日時:2005/12/25 02:21
    • good
    • 0

うーん。

VBがないので未テストですが、SelStartとSelLengthが使えたような!綴りも怪しいです!
    • good
    • 0

うーん。

VBがないので未テストですが、SelStartとSelLengthが使えたような!綴りも怪しいです!

この回答への補足

ご回答ありがとうございます。
SelStartとSelLengthで反転させると変換は出来るのですが、変換する文字列を指定するのが難しいので…。わざわざご回答頂いたのにすいません。

補足日時:2005/12/25 02:35
    • good
    • 0

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