VB.NET拖动无边框窗体编程实例

文章作者 100test 发表时间 2007:09:15 12:15:23
来源 100Test.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


相关文章


用VB编写你自己的M 即时通讯软件
VB十七种可用一行代码完成的技巧
VB实现的M 信息群发软件
用VB制作IE工具条自定义按钮
VB.NET拖动无边框窗体编程实例
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛