vb中如何使窗体随光标移动(就是窗体出现在光标处,像即时菜单一样)我有两个窗体。
我是想让第二个窗体随光标动的。我用了getcurspos,然后再用form1.left/top,但是窗体总是出现在左上角,而不光标处,另外窗体的移动范围也很小。求助。...
我是想让第二个窗体随光标动的。我用了getcurspos,然后再用form1.left/top,但是窗体总是出现在左上角,而不光标处,另外窗体的移动范围也很小。求助。
展开
展开全部
你那个问题估计是你没注意他们的单位,getcurpos得到的是像素,而窗体的位置的单位是 缇
1像素=15缇。所以要乘以十五。
Option Explicit
Private Type POINTAPI
X As Long
Y As Long
End Type
Private Declare Function GetCursorPos Lib "USER32" (lpPoint As POINTAPI) As Long
Private Sub Command1_Click()
Form2.Show
Timer1.Interval = 100
Timer1.Enabled = True
End Sub
Private Sub Command2_Click()
Timer1.Enabled = False
Form2.Hide
End Sub
Private Sub Timer1_Timer()
Dim p As POINTAPI
GetCursorPos p '取鼠标所在位置坐标
Form2.Left = p.X * 15
Form2.Top = p.Y * 15
End Sub
1像素=15缇。所以要乘以十五。
Option Explicit
Private Type POINTAPI
X As Long
Y As Long
End Type
Private Declare Function GetCursorPos Lib "USER32" (lpPoint As POINTAPI) As Long
Private Sub Command1_Click()
Form2.Show
Timer1.Interval = 100
Timer1.Enabled = True
End Sub
Private Sub Command2_Click()
Timer1.Enabled = False
Form2.Hide
End Sub
Private Sub Timer1_Timer()
Dim p As POINTAPI
GetCursorPos p '取鼠标所在位置坐标
Form2.Left = p.X * 15
Form2.Top = p.Y * 15
End Sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询