- 帖子
- 4901
- 主題
- 44
- 精華
- 24
- 積分
- 4916
- 點名
- 84
- 作業系統
- Windows 7
- 軟體版本
- Office 20xx
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台北
- 註冊時間
- 2010-4-30
- 最後登錄
- 2025-4-8
               
|
本帖最後由 Hsieh 於 2011-3-22 08:10 編輯
Calculater.rar (10.34 KB)
這是最基礎的物件類別應用的模型
可從範例中學習如何宣告物件類別
將同類物件集合做同一事件
以簡單計算器為例
USERFORM1模組- Private Sub CommandButton19_Click() '=號按鈕
- Dim Nr As Variant
- Nr = Application.Evaluate(Label1.Caption)
- Nr = IIf(IsError(Nr), Err.Number, Nr)
- If Label1.Caption <> "" Then Label2.Caption = CStr(Nr)
- End Sub
- Private Sub CommandButton20_Click() '←號按鈕
- If Label1.Caption <> "" Then Label1.Caption = Mid(Label1.Caption, 1, Len(Label1.Caption) - 1) '減少右邊1個文字
- End Sub
- Private Sub CommandButton21_Click()
- Unload Me '卸除表單
- End Sub
- Private Sub UserForm_Initialize() '表單初始事件
- For i = 1 To 18 '將前個按鈕加入陣列
- Set ctrl = Controls("CommandButton" & i)
- ReDim Preserve obj(i)
- Set obj(i).MyButton = ctrl
- Next
- End Sub
複製代碼 Module1模組- Public obj() As New Class1 '陣列變數內容是新的物件類別
複製代碼 物件類別模組 CLASS1- Public WithEvents MyButton As MSForms.CommandButton '此類別物件為表單按鈕
- Sub MyButton_Click() '此類別單擊事件
- Dim MyStr As String
- MyStr = UserForm1.Label1.Caption '字串變數的值是表單標籤文字
- MyStr = MyStr & MyButton.Caption '增加字串變數內容
- UserForm1.Label1.Caption = MyStr '將表單標籤文字變更
- End Sub
複製代碼 |
|