vb 如何移动form1窗口

 我来答
xiangzichen
2011-04-09 · 小型控制器,非标自动化,步进伺服电机
xiangzichen
采纳数:47 获赞数:175

向TA提问 私信TA
展开全部
你的意思是移动一个没有controlbox的form吧,给你一段代码,可以点住form任意位置移动,不限于点住标题栏,而且还可以扩展到别的控件上,如picturebox等

'新建一个vb工程,然后再放一个picturebox,把下面代码输入就可以,这样,你拖动picturebox可以移动,拖动窗体也可以移动.
Option Explicit

Dim bMove As Boolean
Dim oldX As Integer
Dim oldY As Integer

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If bMove Then
Form1.Left = X - oldX + Form1.Left
Form1.Top = Y - oldY + Form1.Top
End If
End Sub

Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
bMove = False
End Sub

Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
bMove = True
oldX = X: oldY = Y
End Sub

Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If bMove Then
Picture1.Left = X - oldX + Picture1.Left
Picture1.Top = Y - oldY + Picture1.Top
End If
End Sub

Private Sub Picture1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
bMove = False
End Sub

Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
bMove = True
oldX = X: oldY = Y
End Sub
'看看是否复合你的要求
百度网友a556ee52d
推荐于2018-04-21 · TA获得超过1147个赞
知道小有建树答主
回答量:216
采纳率:100%
帮助的人:338万
展开全部
向下移动10个单位:
Form1.Top = Form1.Top + 10
向上移动10个单位:
Form1.Top = Form1.Top - 10
向右移动10个单位:
Form1.Left = Form1.Left + 10
向左移动10个单位:
Form1.Left = Form1.Left - 10
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
林旭林冲
2011-04-09
知道答主
回答量:25
采纳率:0%
帮助的人:24.8万
展开全部
直接拖动鼠标移动就行了阿。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式