VERSION 1.0 CLASS
BEGIN
  MultiUse = -1  'True
  Persistable = 0  'NotPersistable
  DataBindingBehavior = 0  'vbNone
  DataSourceBehavior  = 0  'vbNone
  MTSTransactionMode  = 0  'NotAnMTSObject
END
Attribute VB_Name = "thing"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = True
Option Explicit
Public Name As String
Private mlngDebugID As Long
Private mthStuckOnMyself As thing
Private mblnStuckOnMyself As Boolean

Public Property Get DebugID() As Long
    DebugID = mlngDebugID
End Property



Public Sub ReverseName()
    Dim intCt As Integer
    Dim strNew As String
    For intCt = 1 To Len(Name)
        strNew = Mid$(Name, intCt, 1) & strNew
    Next
    Name = strNew
End Sub

Private Sub Class_Initialize()
    '获得由只读的 DebugID 属性
'   返回的调试 ID。
    mlngDebugID = GetDebugID
    Debug.Print "Initialize Thing " & DebugID _
    & ", Name=" & Name

End Sub
Private Sub Class_Terminate()
    On Error Resume Next
    Debug.Print "Terminate Thing " & DebugID _
    & ", Name=" & Name
End Sub



Public Property Get StuckOnMyself() As Variant
    StuckOnMyself = mblnStuckOnMyself
End Property

Public Property Let StuckOnMyself(ByVal NewValue As Variant)
    mblnStuckOnMyself = NewValue
    If mblnStuckOnMyself Then
        Set mthStuckOnMyself = Me
    Else
        Set mthStuckOnMyself = Nothing
    End If
End Property
