Imports System.Drawing.Imaging Imports System.Diagnostics Public Class Form1 Inherits Form 'フォームがコンポーネントの一覧をクリーンアップするために dispose をオーバーライドします。 _ Protected Overrides Sub Dispose(ByVal disposing As Boolean) If disposing AndAlso components IsNot Nothing Then components.Dispose() End If MyBase.Dispose(disposing) End Sub Private WithEvents label4 As System.Windows.Forms.Label Private WithEvents label3 As System.Windows.Forms.Label Private WithEvents labelInsert As System.Windows.Forms.Label Private WithEvents labelScrollLock As System.Windows.Forms.Label Private WithEvents label2 As System.Windows.Forms.Label Private WithEvents labelCapsLock As System.Windows.Forms.Label Private WithEvents label1 As System.Windows.Forms.Label Private WithEvents labelNumLock As System.Windows.Forms.Label 'Windows フォーム デザイナで必要です。 Private components As System.ComponentModel.IContainer 'メモ: 以下のプロシージャは Windows フォーム デザイナで必要です。 'Windows フォーム デザイナを使用して変更できます。 'コード エディタを使って変更しないでください。 _ Private Sub InitializeComponent() Me.label4 = New System.Windows.Forms.Label Me.label3 = New System.Windows.Forms.Label Me.labelInsert = New System.Windows.Forms.Label Me.labelScrollLock = New System.Windows.Forms.Label Me.label2 = New System.Windows.Forms.Label Me.labelCapsLock = New System.Windows.Forms.Label Me.label1 = New System.Windows.Forms.Label Me.labelNumLock = New System.Windows.Forms.Label Me.SuspendLayout() ' 'label4 ' Me.label4.Location = New System.Drawing.Point(12, 95) Me.label4.Name = "label4" Me.label4.Size = New System.Drawing.Size(72, 20) Me.label4.TabIndex = 6 Me.label4.Text = "Insert:" Me.label4.TextAlign = System.Drawing.ContentAlignment.MiddleRight ' 'label3 ' Me.label3.Location = New System.Drawing.Point(12, 67) Me.label3.Name = "label3" Me.label3.Size = New System.Drawing.Size(72, 20) Me.label3.TabIndex = 5 Me.label3.Text = "ScrollLock:" Me.label3.TextAlign = System.Drawing.ContentAlignment.MiddleRight ' 'labelInsert ' Me.labelInsert.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D Me.labelInsert.Location = New System.Drawing.Point(90, 95) Me.labelInsert.Name = "labelInsert" Me.labelInsert.Size = New System.Drawing.Size(190, 20) Me.labelInsert.TabIndex = 8 Me.labelInsert.TextAlign = System.Drawing.ContentAlignment.MiddleLeft ' 'labelScrollLock ' Me.labelScrollLock.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D Me.labelScrollLock.Location = New System.Drawing.Point(90, 67) Me.labelScrollLock.Name = "labelScrollLock" Me.labelScrollLock.Size = New System.Drawing.Size(190, 20) Me.labelScrollLock.TabIndex = 7 Me.labelScrollLock.TextAlign = System.Drawing.ContentAlignment.MiddleLeft ' 'label2 ' Me.label2.Location = New System.Drawing.Point(12, 39) Me.label2.Name = "label2" Me.label2.Size = New System.Drawing.Size(72, 20) Me.label2.TabIndex = 2 Me.label2.Text = "CapsLock:" Me.label2.TextAlign = System.Drawing.ContentAlignment.MiddleRight ' 'labelCapsLock ' Me.labelCapsLock.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D Me.labelCapsLock.Location = New System.Drawing.Point(90, 39) Me.labelCapsLock.Name = "labelCapsLock" Me.labelCapsLock.Size = New System.Drawing.Size(190, 20) Me.labelCapsLock.TabIndex = 1 Me.labelCapsLock.TextAlign = System.Drawing.ContentAlignment.MiddleLeft ' 'label1 ' Me.label1.Location = New System.Drawing.Point(12, 11) Me.label1.Name = "label1" Me.label1.Size = New System.Drawing.Size(72, 20) Me.label1.TabIndex = 4 Me.label1.Text = "NumLock:" Me.label1.TextAlign = System.Drawing.ContentAlignment.MiddleRight ' 'labelNumLock ' Me.labelNumLock.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D Me.labelNumLock.Location = New System.Drawing.Point(90, 11) Me.labelNumLock.Name = "labelNumLock" Me.labelNumLock.Size = New System.Drawing.Size(190, 20) Me.labelNumLock.TabIndex = 3 Me.labelNumLock.TextAlign = System.Drawing.ContentAlignment.MiddleLeft ' 'Form1 ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 12.0!) Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font Me.ClientSize = New System.Drawing.Size(292, 126) Me.Controls.Add(Me.label4) Me.Controls.Add(Me.label3) Me.Controls.Add(Me.labelInsert) Me.Controls.Add(Me.labelScrollLock) Me.Controls.Add(Me.label2) Me.Controls.Add(Me.labelCapsLock) Me.Controls.Add(Me.label1) Me.Controls.Add(Me.labelNumLock) Me.MaximizeBox = False Me.MinimizeBox = False Me.Name = "Form1" Me.Text = "Form1" Me.ResumeLayout(False) End Sub Sub New() InitializeComponent() ' アプリケーションのアイドル時に呼び出される ' イベント・ハンドラを登録する AddHandler Application.Idle, AddressOf Application_Idle End Sub ' アプリケーションがアイドル時にテキストを更新する Private Sub Application_Idle(ByVal sender As Object, ByVal e As EventArgs) ' [NumLock]キーの状態を確認する If Control.IsKeyLocked(Keys.NumLock) Then labelNumLock.Text = "ON" Else labelNumLock.Text = "OFF" End If ' [CapsLock]キーの状態を確認する ' ※Keys.Capitalを使用してもよい If Control.IsKeyLocked(Keys.CapsLock) Then labelCapsLock.Text = "ON" Else labelCapsLock.Text = "OFF" End If ' [ScrollLock]キーの状態を確認する If Control.IsKeyLocked(Keys.Scroll) Then labelScrollLock.Text = "ON" Else labelScrollLock.Text = "OFF" End If ' [Insert]キーの状態を確認する If Control.IsKeyLocked(Keys.Insert) Then labelInsert.Text = "ON" Else labelInsert.Text = "OFF" End If End Sub End Class