コードで[TAB]キー押下と同じ働きをさせるには?

解決


まーさん  2002-07-02 13:03:59  No: 104481  IP: [192.*.*.*]

コードで、[TAB]もしくは、[SHIFT]+[TAB]が押下された場合と同じ動作をさせるにはどうしたらよろしいでしょうか?PICTUREBOXで、GotFocusイベントが発生した場合に、次のTABインデックスのコントロールへFOCUSを移動させたいと考えています。ちなみに、PICTUREBOXのフォーカスは生かしたいので、TABSTOPはFALSEにしていません。よろしくお願い致します。

編集 削除
Say  2002-07-02 13:38:47  No: 104482  IP: [192.*.*.*]

一番一般的なのは、
次のコントロール.SetFocus
でしょう。
どうしてもTabキーを押したことにしたいなら、
SendKeys でTab キーを送ることができますが、副作用があります。
APIのkeybd_event 使ったほうがいいでしょう。

編集 削除
まーさん  2002-07-02 14:25:05  No: 104483  IP: [192.*.*.*]

Sayさん、早速のご回答有難うございます。
APIを使用して試してみたいと思います。
因みにSendKeysの副作用とはどういったもの
なのでしょうか?

編集 削除
Say  2002-07-02 14:36:52  No: 104484  IP: [192.*.*.*]

開発環境がVB6以降ならとりあえず大丈夫なはずですが、
参考までに・・・
http://support.microsoft.com/default.aspx?scid=%2Fisapi%2Fgomscom%2Easp%3Ftarget%3D%2Fjapan%2Fsupport%2Fkb%2Farticles%2Fjp179%2F9%2F87%2Easp&LN=JA
[VB] 複数のSendKeysステートメントが実行されるとNumLockキーがオフになる
最終更新日: 2001/04/11
文書番号: JP179987

編集 削除
まーさん  2002-07-02 14:50:45  No: 104485  IP: [192.*.*.*]

即レス有難うございます。

副作用について内容を確認しました。
当方VB6.0Enterpriseなので、問題なさそうですが、
やはり、APIで扱ったほうが良さそうですね。

編集 削除