VB.NET拖动无边框窗体编程实例 |
|
www.nanhushi.com 佚名 不详 |
Imports System.Drawing Imports System.Windows.Forms ’****************************************** Private oOriginalRegion As Region = Nothing ’ 用于窗体移动 Private bFormDragging As Boolean = False Private oPointClicked As Point
’******************************************
Private Sub Form1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles MyBase.MouseDown
Me.bFormDragging = True Me.oPointClicked = New Point(e.X, e.Y)
End Sub ’******************************************
Private Sub Form1_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles MyBase.MouseUp Me.bFormDragging = False
End Sub ’******************************************
Private Sub Form1_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles MyBase.MouseMove If Me.bFormDragging Then
Dim oMoveToPoint As Point
’ 以当前鼠标位置为基础,找出目标位置
oMoveToPoint = Me.PointToScreen(New Point(e.X, e.Y))
’ 根据开始位置作出调整
oMoveToPoint.Offset(Me.oPointClicked.X * -1, _
(Me.oPointClicked.Y + _
SystemInformation.CaptionHeight + _
SystemInformation.BorderSize.Height) * -1)
’ 移动窗体
Me.Location = oMoveToPoint
End If
End Sub
|
|
|
文章录入:杜斌 责任编辑:杜斌 |
|
上一篇文章: 调整Combo下拉部分的宽度 下一篇文章: VB实现的MSN信息群发软件 |
【字体:小 大】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 |
|
|