Board logo

標題: [發問] 如何修正物件類別語法呢? [打印本頁]

作者: dechiuan999    時間: 2012-12-1 08:46     標題: 如何修正物件類別語法呢?

各位大大好:

   小弟從網業搜集到QEE大大物件類別範例,
執行卻出現〝無法處理所指定物件的事件”
請問應如何修正下列語法呢?
[attach]13349[/attach]
語法如下:
Option Explicit
Dim WithEvents mc As myClass    '無法處理所指定物件的事件
Public Event Change(ByRef Cancel As Boolean)
Private s$
Public Property Get Value() As String
  Value = s
End Property
Public Property Let Value(ByVal c As String)
  s = c
End Property
Private Sub Class_Initialize()
  s = "abc"  '初始值
End Sub

Private Sub CommandButton1_Click()
  mc.Value = TextBox1 '賦值
End Sub
Private Sub CommandButton2_Click()
  MsgBox "mc當前的值為" & mc.Value '讀值
End Sub
Private Sub mc_Change(ByRef Cancel As Boolean)
  If MsgBox("要改變mc的值嗎?", vbYesNo) = vbNo Then Cancel = True
End Sub
Dim mc As New myClass
Private Sub UserForm_Initialize()  
  Set mc = New myClass  
End Sub



謝謝各位大大!
作者: GBKEE    時間: 2012-12-1 12:26

回復 1# dechiuan999
請問 你是要將UserForm1 中的那一個控制項 設定到物件類別模組 myClass 中
作者: dechiuan999    時間: 2012-12-1 16:56

回復 2# GBKEE
版主大大您好:

   小弟對物件類別一直處在霧裡看花的皆段,
目前都是由網頁搜尋一些範例來學習。
因此,對此語法真正表達的內含實在無法完全理解解。

小弟再次到QEE大大的網站將其文意複製供版主大大過目,
希望能讓版主有所助益。
載要如下:
http://club.excelhome.net/thread-198049-2-1.html
六、創建類事件

這段代碼實現的是,當點擊CommandButton1時
便會將TextBox1的值賦給mc的Value,
當點擊CommandButton2時便會顯示mc當前的Value值。

此範例其實尚有
第二步:使用RaiseEvent語句引發事件

小弟想說先測試前段語法等理解之後,
再載入第二步的RaiseEvent語句引發事件
來學習。

不知是否因為未完全將語法全部組合而影響到
程式的執行嗎?


感恩大大!




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)