|
Form上のマウスの位置を表示
|
Form上のマウスの位置をFormのTextに表示します。
Form上のマウスの位置を表示
Private Sub Form1_MouseMove( ByVal sender As Object , _
ByVal e As System.Windows.Forms.MouseEventArgs) _
Handles Me .MouseMove
Dim pointPos As Point = Me .PointToClient(Windows.Forms.Cursor.Position)
Dim posX As Integer = pointPos.X
Dim posY As Integer = pointPos.Y
Me .Text = "{X=" & posX.ToString & ",Y=" & posY.ToString & "}"
End Sub
上のコードは間違いではないのだが、下の様に書くほうが簡単だ。
Form上のマウスの位置を表示
Private Sub Form1_MouseMove( ByVal sender As Object , _
ByVal e As System.Windows.Forms.MouseEventArgs) _
Handles Me .MouseMove
Me .Text = e.Location.ToString
End Sub
クリックイベントの場合は、引数に・System.Windows.Forms.MouseEventArgsが渡ってくるのではなく
・System.EventArgsが渡って来るので、キャストを行います。
クリックイベントの場合
Private Sub PictureBox1_Click( ByVal sender As System.Object, _
ByVal e As System.EventArgs) _
Handles PictureBox1.Click
'キャストを行う
Dim e1 As System.Windows.Forms.MouseEventArgs = _
DirectCast (e, System.Windows.Forms.MouseEventArgs)
Me .Text = e1.Location.ToString
End Sub