• 締切済み

KeyPressイベントのビープ音

VB2008です。 Text1でEnterを押すとText2にフォーカスを移す、という処理をしたいのですが、 Private Sub Text1_KeyPress(引数省略)  If e.Keychar=Chr(13) then   Text2.Focus  End If End Sub これだとビープ音が鳴ってしまいます。 鳴らないようにするには、どうしたらいいのでしょうか?

みんなの回答

  • OldBoy65
  • ベストアンサー率60% (3/5)
回答No.2

かなり不完全で実用にはもっといろんな処理が必要ですが ビープ音を消すなら Private Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii = Chr(13) Then KeyAscii = 0:Text2.Focus end if ・・・・・ ・・・・・ ・・・・・ でしょう

ko-ichi___
質問者

お礼

これは・・・6.0じゃないでしょうか? singlecatさんの通りにKeyPreviewをヒントに頑張ってみます。 ありがとうございました。

すると、全ての回答が全文表示されます。
  • singlecat
  • ベストアンサー率33% (139/418)
回答No.1

ズバリ書くと、勉強にならないので、ヒントを書いておきます。 これだと、Objectが増える度にコードを追加しなければならないですね... FormのKeyPreviewをtrueにしてやると、Form側のKeyPressやKeyDownに集約して制御できます。 この時にFocusを使ってはいけません。 次のコントロールに移すコマンドやAPIを使います。

ko-ichi___
質問者

お礼

これは手厳しいですね(笑) なるほど、KeyPreviewですか・・・これをヒントに色々試してみます。 ありがとうございました。

すると、全ての回答が全文表示されます。

関連するQ&A