• ベストアンサー

Formにキーイベントを認識させるには?

キーボードからキーを入力して、フォームに貼り付けたラベルにその キーイベントを認識させたいのですがどうすればいいのでしょうか? それとも、フォーム自体に認識させるという解釈なのでしょうか? 質問が下手の申し訳ありません。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

お世話になります。 Label はキーボードのイベントを普通に使ってれば取得できません。 なので、Form の Key**** イベントで捉える必要があります。 VB6 でも .NET でも Form の KeyPreview は True にする必要があります。 バージョンが書いてませんが、 .NET の場合だと、こんな感じかと思います。 Public Class Form1   Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load     Me.KeyPreview = True   End Sub   Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown     Me.Label1.Text = e.KeyCode.ToString()   End Sub End Class

noname#30978
質問者

お礼

バージョンを書き忘れていました。すいません。.NETです。 組んで頂いたプログラムを動かしてみて良くわかりました。 KeyPreviewが何なのか分からないでいたので助かりました。 ありがとうございます。

その他の回答 (1)

回答No.1

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) Label1 = Label1 & Chr(KeyCode) End Sub VB6で フォームにラベルをひとつ貼る

関連するQ&A