拖动标题栏时出发什么事件?

来源:百度知道 编辑:UC知道 时间:2024/06/20 15:17:13
拖动标题栏时出发什么事件?或者说,什么进程会中断?

我在Command1_Click里面用一个循环,但是一旦拖动标题栏,就中端了?如何知道标题栏被拖了?

代码如下,大家可以试试
--------------------------------------------------------------
Private Sub Command1_Click()
    Dim n As Long
    n = 1
    Do
        n = n + 1
        Form1.Caption = n
        DoEvents
        If n = 10001 Then n = 1
    Loop
End Sub
1. 关于为什么Command1_Click停止明白了。但是由于使用了Timer,拖动时Timer却不停止,所以造成了程序的一些问题。是否可以在拖动时完全暂停程序?或者只能放弃Timer?

2. LostFocus事件为什么无效?代码如下
Private Sub Form_GotFocus()
    Form1.Caption = Form1.Caption 

其实没太明白你想知道什么.
1.你的语句里面既然有 DoEvents,那么你窗体其他事件(如拖动标题栏)没有完成,那循环肯定是不往下的了.必须doevents的事件完成了,才能继续执行下面的语句.
2.你要窗体失去焦点我不太明白,你点其他地方窗体不就失去焦点了吗?
3.要想实现暂停很简单.在模块定义一个boolean变量,在循环里面加上判断.当窗体最小化的时候给那个变量赋值为false.如:
Public a as boolean
语句改成这样
Do
if a=true then
n = n + 1
Form1.Caption = n
If n = 10001 Then n = 1
end if
DoEvents
Loop