vb.net基础教程:vb基础-vb教程



ute;´介绍说明:
´本例演示了怎样移动无标题栏窗体思路方法中涉
´及到MouseDown、MouseMove、MouseUp 3个鼠标事件
´使用我们可以从中学习到它们使用方法
´---------------------------------------------
Option Explicit
´变量声明
´MoveScreen布尔型变量标示窗体是否处于被移动状态
Dim MoveScreen As Boolean

´鼠标位置
Dim MousX As Integer
Dim MousY As Integer
´窗体位置
Dim CurrX As Integer
Dim CurrY As Integer

´“退出”按钮
Private Sub CmdExit_Click
    End
End Sub

´当鼠标在窗体上按下时
Private Sub Form_MouseDown(Button As Integer, Sht As Integer, X As Single, Y As Single)
´---------------------------------------------
´参数介绍说明:
´---------------------------------------------
´button  返回个整数用来标识按下或释放是哪
´个按钮button 参数值为相应于左按钮(1)右按钮
´(2)以及中间按钮(4)
´---------------------------------------------
´sht   返回个整数在鼠标按钮被按下或者被释放
´同时SHIFT,CTRL,和 ALT 键状态返回sht
´参数值分别为12和 4指示这些键状态
´---------------------------------------------
´x, y    返回个指定鼠标指针当前位置
´---------------------------------------------
    ´如果是鼠标左键按下
    If Button = 1 Then
    ´标示为移动状态
    MoveScreen = True
    ´得到鼠标在窗体上位置(相对和窗体内部坐标)
    MousX = X
    MousY = Y
    End If
End Sub

´当鼠标在窗体上移过时
Private Sub Form_MouseMove(Button As Integer, Sht As Integer, X As Single, Y As Single)
      
    ´如果处于鼠标左键按下状态即MoveScreen = True时
    If MoveScreen Then
        ´计算新窗体坐标值
        ´仔细想看看是不是这样
      CurrX = Form1.Left - MousX + X
        CurrY = Form1.Top - MousY + Y
        ´移动窗体到新位置
        Form1.Move CurrX, CurrY
    End If
   
    ´把新窗体坐标显示出来是相对于屏幕坐标
    Label1.Caption = CurrX
    Label2.Caption = CurrY
    ´把鼠标点击位置显示出来是相对和窗体坐标
    Label3.Caption = MousX
    Label4.Caption = MousY
End Sub

´如果鼠标松开则停止拖动
Private Sub Form_MouseUp(Button As Integer, Sht As Integer, X As Single, Y As Single)
    MoveScreen = False
End Sub

 


Tags:  vb6.0教程 vb教程 vb6.0基础教程 vb.net基础教程

延伸阅读

最新评论

发表评论