⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 myfield.cls

📁 guan yu pai ke xi tong de ruan jian
💻 CLS
字号:
VERSION 1.0 CLASS
BEGIN
  MultiUse = -1  'True
  Persistable = 0  'NotPersistable
  DataBindingBehavior = 0  'vbNone
  DataSourceBehavior  = 0  'vbNone
  MTSTransactionMode  = 0  'NotAnMTSObject
END
Attribute VB_Name = "MDD_Field"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False
'本模块表示一个字段。
Private TemDataType As Long '标志数据类型的一个变量.
Private TemValue As Variant '字段的值.
Public DefaultValue As Variant '默认值。
Public Name As String '字段名称.
Public Enum MDD_DataType '数据类型。
    MddBoolean = vbBoolean '布尔型。
    MddByte = vbByte '字节型。
    mddInteger = vbInteger '整型。
    MddLong = vbLong '长整型。
    MddString = vbString '字符型。
End Enum
'1:MyByte字节型,占一个字节.
'2:MyInteger整数型,占两个字节.
'3:MyLong长整型,占四个字节.
'4:MyString字符型,根据字符长度点用相应字节.以0表示字符结束.(即比实际字符长度多一个字节).
'Const vbArray = 8192 (&H2000)
'Const vbBoolean = 11
'Const vbByte = 17 (&H11)
'Const vbCurrency = 6
'Const vbDataObject = 13
'Const vbDate = 7
'Const vbDecimal = 14
'Const vbDouble = 5
'Const vbEmpty = 0
'Const vbError = 10
'Const vbInteger = 2
'Const vbLong = 3
'Const vbNull = 1
'Const vbObject = 9
'Const vbSingle = 4
'Const vbString = 8
'Const vbUserDefinedType = 36 (&H24)
'Const vbVariant = 12
Public Property Get DataType() As MDD_DataType
    DataType = TemDataType
End Property
Public Property Let DataType(ByVal InValue As MDD_DataType)
    '在指定数据类型时确定默认值。
    Select Case InValue
    Case vbBoolean:
        DefaultValue = False
    Case vbByte:
        DefaultValue = 0
    Case vbInteger
        DefaultValue = -1
    Case vbLong:
        DefaultValue = -1
    Case vbString:
        DefaultValue = ""
    Case Else:
        DefaultValue = Null
    End Select
    TemDataType = InValue
    TemValue = DefaultValue
End Property
Public Property Get Value() As Variant
On Error GoTo GetValueErr
    Select Case TemDataType '根据类型进行转换.
    Case vbBoolean: '布尔型。
        Value = CBool(TemValue)
    Case vbByte: '字节型.
        Value = CByte(TemValue)
    Case vbInteger: '整型.
        Value = CInt(TemValue)
    Case vbLong: '长整型.
        Value = CLng(TemValue)
    Case vbString: '字符串型.
        Value = CStr(TemValue)
    Case Else: '其它类型.
        Value = TemValue
    End Select
    Exit Property
GetValueErr:
    'MsgBox "错误:" & Err.Number & Chr(13) & Err.Description, vbOKOnly, "错误..."
End Property
Public Property Let Value(ByVal InValue As Variant)
On Error GoTo LetValueErr
    Select Case TemDataType '根据类型进行转换.
    Case vbBoolean: '布尔型。
        TemValue = CBool(InValue)
    Case vbByte: '字节型.
        TemValue = CByte(InValue)
    Case vbInteger: '整型.
        TemValue = CInt(InValue)
    Case vbLong: '长整型.
        TemValue = CLng(InValue)
    Case vbString: '字符串型.
        TemValue = CStr(InValue)
    Case Else: '其它类型.
        DefaultValue = Null
    End Select
    Exit Property
LetValueErr:
    'MsgBox "错误:" & Err.Number & Chr(13) & Err.Description, vbOKOnly, "错误..."
End Property
Private Sub Class_Initialize()
    '初始化,确定默认值.
    Name = ""
    TemDataType = vbByte
    TemValue = 0
    DefaultValue = 0
End Sub

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -