DOBON.NET DOBON.NETプログラミング掲示板過去ログ

Fキーボタン割り当てについて

環境/言語:[WinVista + VB2005]
分類:[.NET]

VB2005 Windowsアプリにて開発を行っています。
ボタンを数個配置して、キーボードのFキーと連動してイベントを発生したいのですが、スマートなやり方はないでしょうか?

現在は
'ボタン動作1
Private Sub btnF1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnF1.Click
  (内容)
End Sub

F1キー押下にて btnF1_Click を呼びしたいのですが

'フォーム上でのキー操作(KeyPreview=True)
Private Sub frmMUser_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
Select Case e.KeyCode
Case Keys.F1
Call btnF1_Click(New Object, New EventArgs)
End Select
End Sub

としています。
これだとF1ボタンが有効かどうか調べたり面倒です。

メニューのショートカットみたいに自動的に割り当てさせるような設定があればいいのですが...
> Call btnF1_Click(New Object, New EventArgs)

これについては、イベントハンドラを呼ばずに処理を外出しにしてそのプロシージャを呼ぶようにしたほうが良いでしょう。

本題ですが、Buttonクラスのメソッドを調べてみてください。
http://msdn.microsoft.com/ja-jp/library/system.windows.forms.button_methods(VS.80).aspx
ちなみにToolStripMenuItemなんかでも同じですね。

DOBON.NET | プログラミング道 | プログラミング掲示板