当前位置:编程学习 > VB >>

运行状态下如何用鼠标移动 Frame 控件????

怎样在程序运行的状态下 用鼠标移动窗体上的控件??可以随意放在哪里....~!!
我想移动 Frame 控件,应该怎么办呢?? --------------------编程问答-------------------- MouseDown  MouseMove   MouseUp
前事件,記住要移動了,中事件開始移動,後事件結束移動。 --------------------编程问答-------------------- 突然想吃橙~ --------------------编程问答-------------------- Dim oldX As Single, oldY As Single
Private Sub Frame1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
oldX = X
oldY = Y

End Sub


Private Sub Frame1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
Frame1.Move Frame1.Left + X - oldX, Frame1.Top + Y - oldY

End Sub
--------------------编程问答-------------------- 3 楼的代码我改进了下!

====cike例题====
name = 移动框架控件
form = Frame1
效果  = 可以随意拖动 框架的位置 
================


Dim a As Boolean     ' 这个变量记录了是否在按下状态
Dim oldx As Integer  ' 这个变量记录了 未移动的X 位置
Dim oldy As Integer  ' 这个变量记录了 未移动的Y 位置

Private Sub Frame1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
a = True        '鼠标在 框架上按下时候 记录已经按下
oldx = X        '同时记录当前位置 X
oldy = Y        '同时记录当前位置 Y
End Sub

Private Sub Frame1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
' 若按下 就移动 当前位置-移动位置=移动值
'具体可以参考move 函数
If a = True Then Frame1.Move Frame1.Left + X - oldx, Frame1.Top + Y - oldy

End Sub

Private Sub Frame1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
a = False  '鼠标放开后 记录
End Sub


--------------------编程问答-------------------- 路过 --------------------编程问答-------------------- 向大家学习了. --------------------编程问答-------------------- 这个简单啊,网上搜一下就得到答案了. --------------------编程问答-------------------- 有问题请先GOOGLE,BAIDU
补充:VB ,  控件
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,