vb.net鼠标跟随 vb如何控制鼠标

VB.NET怎么可以限制窗体不能被鼠标随便拖动位置很简单,通过WindowsAPI,删除窗体菜单项就行了
首先在窗体类中声明API:
Declare Function GetSystemMenu Lib "user32" (ByVal hWnd As IntPtr, ByVal bRevert As Boolean) As IntPtr
Declare Function RemoveMenu Lib "user32" (ByVal lngHmenu As IntPtr, ByVal nPosition As Integer, ByVal wFlags As Integer) As Integer
其次声明API参数常量:
Const MF_BYPOSITION As Integer = H400
然后在窗体类中写入过程:
Private Sub UserForm_Initialize_stopmove() '禁止窗体移动
Dim lngHwnd As IntPtr
Dim lngHmenu As IntPtr
lngHwnd = Me.Handle
If lngHwnd0 Then
lngHmenu = GetSystemMenu(lngHwnd, False)
RemoveMenu(lngHmenu, 0, MF_BYPOSITION) '这里的0代表菜单中从上往下数第一个菜单项
End If
End Sub
【vb.net鼠标跟随 vb如何控制鼠标】Private Sub UserForm_Initialize_onmove() '恢复窗体移动
Dim lngHwnd As IntPtr
Dim lngHmenu As IntPtr
lngHwnd = Me.Handle
If lngHwnd0 Then
lngHmenu = GetSystemMenu(lngHwnd, True)
RemoveMenu(lngHmenu, 0, MF_BYPOSITION) '这里的0与禁止代码中的数值同步,原因时虽然表面上删除了菜单项,实则为隐藏了菜单项,各个菜单的索引值并没有变,所以0依然代表初始菜单的第一个菜单项 , 即被删除的那个菜单项
End If
End Sub
然后如果你的窗口菜单是动态变化的,建议声明常数:
Const MF_BYPOSITION As Integer = H0
然后使用相关的Windows功能的常数进行删除菜单 。常数需要自行查看winuser.h头文件
如果找不到该头文件,可以看这里:网页链接
其余信息详见MSDN:网页链接
最后说一下,不建议前面网友说的重写WndProc的方法,因为这样拦截标题栏点击消息会导致窗体本身的菜单也无法显示出来,有损窗体功能,并且像双击左上角图标关闭窗体这样的功能也会跟着拦截消息的操作一起被吞掉 。
Vb.Net 怎么让窗口随鼠标动新建一窗体FORM2,在原窗体FORM1vb.net鼠标跟随的在mousemove事件中增加FORM2.left=XX,FORM2.TOP=YY.XX,yy是鼠标vb.net鼠标跟随的坐标.
如何在VB.net中用程序控制鼠标移动和点击调用api
在Visual Baisc.net中的声明:
Declare Sub mouse_event Lib "user32" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long)
Public Const MOUSEEVENTF_LEFTDOWN = H2 '模拟鼠标左键按下
Public Const MOUSEEVENTF_LEFTUP = H4 ’模拟鼠标左键释放
Public Const MOUSEEVENTF_MIDDLEDOWN = H20 '模拟鼠标中间键按下
Public Const MOUSEEVENTF_MIDDLEUP = H40 '模拟鼠标中间键释放
Public Const MOUSEEVENTF_RIGHTDOWN = H8 '模拟鼠标右键按下
Public Const MOUSEEVENTF_RIGHTUP = H10 '模拟鼠标右键释放
Public Const MOUSEEVENTF_MOVE = H1 '模拟鼠标指针移动
例:
mouse_event MOUSEEVENTF_LEFTDOWN,10,10,0,0
'在(10,10)模拟鼠标左键按下
vb.net label跟着鼠标移动简单啊
第一个问题
在鼠标vb.net鼠标跟随的 move事件里面 得到鼠标vb.net鼠标跟随的坐标点vb.net鼠标跟随 , 然后更改label的,left 和top属性 。具体的值vb.net鼠标跟随你自己去算 。
第二个问题
其实跟地一次差不多,只不过过加个标记 , 判断鼠标是否在按钮上进行vb.net鼠标跟随了点击操作,鼠标按下时变成TRUE 然后也是在鼠标MOVE的时候,更改按钮的坐标点 。当鼠标弹起的时候将这个标记置换成FALSE
回答完毕
求大神指点vb.net 怎么用SendInput来实现鼠标移动到指定位置呢?您好 , 建议您使用mouse_event或者 Cursor.Position来实现 。例如:
1. 您需要将鼠标移动dx, dy的位置 。
Public Sub MouseMoveBy(ByVal dx As Integer, ByVal dy As Integer)
Cursor.Position = New Point(Cursor.Position.Xdx, Cursor.Position.Ydy)
End Sub
或者
Public Sub MouseMoveBy(ByVal dx As Integer, ByVal dy As Integer)
mouse_event(0, dx, dy, 0, 0)
End Sub
2. 您需要将鼠标移动到x, y的位置
Public Sub MouseMoveTo(ByVal x As Integer, ByVal y As Integer)
Cursor.Position = New Point(x, y)
End Sub
请您试一下 。
关于vb.net鼠标跟随和vb如何控制鼠标的介绍到此就结束了 , 不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

    推荐阅读