標籤控制項主要用於在表單中顯示提示資訊, 如文字框、清單方塊的說明文字。 標籤控制項也可直接識別使用者的按一下和按兩下操作事件。
在實際應用中, 標籤控制項一般只是作為控制項的說明, 不接受用戶的輸入。
下面用一個實例“用進度條跟蹤任務處理進度”來說明標籤控制項的使用:
1 插入一個使用者表單, 並添加以下控制項:控制項類型控制項名稱CaptionBackColor表單frmProgress進度條標籤Label1正在進行操作...
框架frameProgress0%
標籤lblProgress
&H000000FF
按兩下表單空白處, 打開表單的“代碼”視窗, 編寫子過程UpdateProgress, 用來更新進度條的顯示。
Sub UpdateProgress(ByVal lStart As Long, ByVal lEnd As Long, ByVal lProgress As Long)
p = lProgress / (lEnd - lStart)
With Me
.frameProgress.Caption = Format(p, "0%")
.lblProgress.Width = p * (.frameProgress.Width - 10)
.Repaint '更新顯示進度條
End With
If p >= 1 Then Unload Me '完成操作後, 卸載表單
End Sub
3 編寫過程, 並在其中調用UpdateProgress子過程顯示進度向工程中插入一個模組, 編寫以下代碼:
Sub 顯示進度條()
Dim i As Long, p As Single
With frmProgress
.lblProgress.BackColor = RGB(255, 0, 0)
.lblProgress.Width = 0
.Show 0 '顯示進度條
End With
If TypeName(ActiveSheet) <> "Worksheet" Then Exit Sub
Application.ScreenUpdating = False
For i = 1 To 65536
If i Mod 2 = 0 Then
Rows(i).Hidden = True
End If
Call frmProgress.UpdateProgress(1, 65536, i)
Next
Application.ScreenUpdating = True
Unload frmProgress '卸載進度條
End Sub
以上代碼將工作表中1-65536行中的偶數行隱藏起來。 在For迴圈中, 每執行一次迴圈, 就調用UpdateProgress子過程更新進度視窗中的進度條。
-End-