VB2005のMouseHover, VB6.0では?(イベント・コンボボックスにて)

解決


大木  2008-03-10 20:18:03  No: 139235  IP: 192.*.*.*

コンボボックス内のテキストがブランクの場合に、プルダウンへDBより取得した全てを表示。
コンボボックス内へテキストが存在する場合は、テキストの内容でDBより取得した内容を前方一致検索を行った後にプルダウンへ表示。
という処理を行おうとしています。(テキストは漢字含みます)

VB2005ではMouseHoverにて、
コンボボックス内のテキストへ複数文字を入力してから、
プルダウンへカーソルをあわせることにより、
プルダウンが開く前に前方一致検索を行い、プルダウン内へ対象のみ表示ができたのですが、
vb6.0では、複数文字を入力後、かつ、プルダウン展開前にイベントを起動するには、
どのように行えばよいでしょうか?

Change   では、複数文字を入力しても、1文字しか認識してもらえない
Click    では、プルダウンより選択後にイベントが発生するので手遅れ
GotFocus では、テキスト入力前にイベント発生すしてしまう
Keydown  では、1文字目を入力し、ENTERを押す前に起動してしまう

よろしくお願いします。

編集 削除
通ってみた  2008-03-10 20:46:02  No: 139236  IP: 192.*.*.*

>Keydown  では、1文字目を入力し、ENTERを押す前に起動してしまう

Enter以外の場合には処理せず抜けたら望んだ結果になりませんか?

編集 削除
大木  2008-03-11 09:02:45  No: 139237  IP: 192.*.*.*

通ってみたさん  ありがとうございます。
確かにそのやり方で実現できますね。

ありがとうございました。

編集 削除
大木  2008-03-11 10:35:07  No: 139238  IP: 192.*.*.*

解決済みにした上で、更に質問失礼します。
PG内へEnter以外のキーをスルーする条件を付加しました。

presskey    ai     変換      Enter   Enter
テキスト内  「あい」「愛」    「愛」   「愛」
イベント     スルー  スルー   未発生    処理

2度目のEnterでイベントが起動するのですが、
1度目の変換の確定のEnterは拾う方法はないでしょうか?

編集 削除
大木@次問題  2008-03-11 11:01:33  No: 139239  IP: 192.*.*.*

すみません。間違えていました。
修正と加筆です。

vbKeyReturn=13にて判定を行う

presskey    ai     変換      Enter   Enter
テキスト内  「あい」「愛」    「愛」   「愛」
key値        ?     ?        -30556  13
イベント     未発生  未発生   スルー    処理

すみません。

編集 削除
大木  2008-03-11 14:32:59  No: 139240  IP: 192.*.*.*

すみません。
解決致しました。

最初から、DropDownを選んでおけばよかったんですねorz

編集 削除