实现窗体内部的左右移动

2008-02-23 06:59:36来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

'分割区的宽度
Private Const SPLITTERWIDTH = 45
'最小移动宽度
Private Const HMIN = 15
'picLeft和picRight的宽度相对于窗体的比例
Private Percent As Single
'正在拖动的标志
Private DragFlag As Boolean

'每次拖动后需要重排窗体上的控件
Private Sub RedrawMe()
Dim NewWidth As Single
' 忽略窗体缩小的情况
If Windowstate = VBMinimized Then Exit Sub
NewWidth = (ScaleWidth - SPLITTERWIDTH) * Percent
Picleft.Move 0, 0, NewWidth, ScaleHeight
Picright.Move NewWidth SPLITTERWIDTH, 0, ScaleWidth - NewWidth - SPLITTERWIDTH, ScaleHeight
End Sub

Private Sub Form_Load()
'PicLeft和PicRight的MousePointer=1
Percent = 0.5
End Sub

Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
DragFlag = True
End Sub

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
'定义鼠标为vbSizeWE型
MousePointer = vbSizeWE
Percent = X / ScaleWidth
RedrawMe
End Sub

Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
DragFlag = False
MousePointer = 0 '此行语句实际没有起作用
End Sub

上一篇: 封面的设计
下一篇: 利用VB实现浮动按钮

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:VB中用API函数实现文件夹列表

下一篇:Whois 示例程序