none
ファンクションキーに割り付け RRS feed

  • 質問

  • 現在VisualStudio2005Expressにて行き詰まっています。

    大変初歩的な質問で済みませんが、教えてください。

    ファンクショクキーのイベントの捕まえ方はフォーラムで調べたのですが、

    ボタンのクリックイベントをファンクショクキーに割り当てる再に捕まえたイベントでどのような記述をすれば良いのか手詰まりな状態です。

    具体的にはフォームにボタン(Button1)が1つあります。ファンクションキー(F1)が押された際にボタンがクリックされた「Button1_Click」のイベントを起動させたいのですが、参考になるコードがみつかりません。

    ヘルプで調べるヒントだけでも構いませんのでご教授くださると助かります。

    つたない説明ですがよろしくお願いします。 

     

    2006年10月13日 4:15

回答

  • 52714 さん、こんにちは。

     52714 さんからの引用
    「Button1_Click」のイベントを起動させたいのですが、参考になるコードがみつかりません。

    Button.PerformClick メソッドですね。

    2006年10月13日 4:24

すべての返信

  • 52714 さん、こんにちは。

     52714 さんからの引用
    「Button1_Click」のイベントを起動させたいのですが、参考になるコードがみつかりません。

    Button.PerformClick メソッドですね。

    2006年10月13日 4:24
  • 早速の回答ありがとうございました。

    回答のおかげで解決できました。もっと勉強します。

     

    Private Sub Frm1_KeyDown(ByVal sender As System.Object, _
                                                 ByVal e As System.Windows.Forms.KeyEventArgs) _
                                                 Handles MyBase.KeyDown
          Dim T As Object
          T = e.KeyCode()

          Select Case T
             Case 112 'F1
                '検索
                Me.BtnKensaku.PerformClick()
             Case 113 , 114 , 115  , 116 , 117 , 118 ,119 , 120 , 121 , 122 , 123
                      e.Handled = True
             Case Else
                      e.Handled = true
          End Select
       End Sub

    2006年10月13日 4:50
  • 文字コードは、マジック ナンバーではなく、定数を使用するようにしましょう。

    System.Windows.Forms.Keys がそれです。
    せっかく、e.KeyCode が厳密な型になっているのですから、
    Object の T 変数に格納するのはやめた方が良いです。


    Select Case e.KeyCode
        Case Keys.F1

        Case Keys.F2 To Keys F10

    End Select

     

    というコーディングの方が一般的です。

    2006年10月16日 23:56