2

ある入力フォームで、キーボードで入力できるようにしたいです。KeyPressed と KeyUp でキーを読み取る方法は知っていますが、問題は、コントロールにフォーカスがあり、ユーザーが Enter キーを押すと、そのコントロールが Click イベントを受け取ることです。その動作を防ぐことは可能ですか? または、Click イベントがマウスまたはキーボードによって発生したかどうかを知ることは可能ですか?

4

3 に答える 3

2

これは役に立ちますか?マイクロソフトサポート技術情報より

ボタンのコードを button.Click() から button.MouseClick() に移動します

于 2008-11-24T09:30:09.717 に答える
2

必要な状況と正確な動作を説明できれば、これは簡単になります... :)

以下を設定できます。

Form.KeyPreview = True

これにより、最初にキー イベントがフォームに送信され、次にコントロールに送信されます。これにより、フォーム上のキー イベントをキャッチして「キャンセル」する機会が得られます。

e.Handled = True

より詳しい情報

また、フォームに AcceptButton を設定していないことを確認してください。

于 2008-11-24T09:58:15.370 に答える
0

キーボード イベントをリッスンし、キーを除外することもできます。

于 2008-11-24T09:33:31.003 に答える