程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> Visual Basic語言 >> VB綜合教程 >> 在 VB.NET 中如何拖動無邊框的窗體

在 VB.NET 中如何拖動無邊框的窗體

編輯:VB綜合教程
'******************************************
  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
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved