
正文
vb.net获取鼠标,vb编程实现控制鼠标
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
在VB.net中怎么获取 鼠标在屏幕中的坐标
Private Declare Function GetCursorPos Lib "user32" (ByRef lpPoint As POINTAPI) As Long '全屏坐标声明
Private Declare Function ScreenToClient Lib "user32.dll" (ByVal hwnd As Int32, ByRef lpPoint As POINTAPI) As Int32 '窗口坐标声明
Private Structure POINTAPI '声明坐标变量
Public x As Int32 '声明坐标变量为32位
Public y As Int32 '声明坐标变量为32位
End Structure
'以上是声明部分
'以下是窗口部分
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick '用时钟控件来取坐标,窗口上放个Timer组件,Enabled为允许,周期为10到100毫秒均可
Dim P As POINTAPI '声明坐标变量
Dim xx, yy '声明转换要用到的变量
GetCursorPos(P) '获取鼠标在屏幕中的位置
ScreenToClient(Me.Handle.ToInt32, P) '转换为本窗体的坐标
xx = P.x.ToString '把X转换成能显示到文本框的字符串格式
yy = P.y.ToString '把Y转换成能显示到文本框的字符串格式
TextBox1.Text = xx + "和" + yy '文本框的内容为X坐标和Y坐标
End Sub
相关问答
Q1: 在vb.net 键盘事件 中 如何获取当前鼠标的位置。 比如我按下“enter”键,获取此时刻鼠标的位置。
控件中keyup属性记录键盘操作
比如:
Private Sub from1_KeyUp(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyUp
if e.keycode = keys.Enter then
lable1.text =Cursor.Position.X
lable2.text = Cursor.Position.Y
end if
end sub
Q2: vb.net 如何获取鼠标单击的控件名称
这个简单。
在VB.net中,每个事件都对应有两个参数:sender 和 e 。提取 sender 参数信息就可以获取控件名称。如果不理解其中机制,你直接 msgbox(sender) 将其输出,就能查看其中玄机。
获取控件名称代码:CType(sender, Control).Name。
Q3: vb.net 怎样获取鼠标单击点的坐标
通过窗体的MouseDown事件的e.X和e.Y属性获取。通过e.Location属性获取Point类型的坐标。
下面的代码示例使用 Location 属性跟踪鼠标左键单击,并绘制一系列直线段作为对用户输入的响应。如果隐藏窗体然后重新显示它,此示例不保留已绘制的线段,该代码为简单起见而被省略了。
Dim FirstPoint As Point
Dim HaveFirstPoint As Boolean = False
Sub Form1_MouseDownDrawing(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseDown
If HaveFirstPoint Then
Dim g As Graphics = Me.CreateGraphics()
g.DrawLine(Pens.Black, FirstPoint, e.Location)
HaveFirstPoint = False
Else
FirstPoint = e.Location
HaveFirstPoint = True
End If
End Sub








