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

📄 messagestore.vb

📁 通过串口发送短信的模块,采用vb.net编写
💻 VB
字号:
Imports System.Collections


Namespace SMS

    Public Class MessageStore : Inherits CollectionBase

#Region "Enumeration"

        Public Enum EnumMessageType
            ReceivedUnreadMessages
            ReceivedReadMessages
            StoredUnsentMessages
            StoredSentMessages
            AllMessages
        End Enum

#End Region


        ' AT+CMGF=1;+CMGL="ALL", "REC READ", "REC UNREAD"


        ' AT+CMGL=0-4 , 0 = "REC UNREAD", 1 = "REC READ", 2="STO UNSENT", 3 = "STO SENT", 4="ALL"

#Region "Private Members"

        Private blnConcatenate As Boolean
        Private blnHasMessages As Boolean
        Private blnIsEmpty As Boolean
        Private oGsmModem As GSMModem


#End Region

#Region "Constructor"
        Public Sub New()

        End Sub
#End Region

#Region "Friend Properties"

        Public Property Modem() As GSMModem
            Get
                Return Me.oGsmModem
            End Get
            Set(ByVal value As GSMModem)
                Me.oGsmModem = value
            End Set
        End Property

#End Region

#Region "Public Properties"

        Public Property Concatenate() As Boolean
            Get
                Return Me.blnConcatenate
            End Get
            Set(ByVal value As Boolean)
                Me.blnConcatenate = value
            End Set
        End Property

        Public Property HasMessages() As Boolean
            Get
                Return Me.blnHasMessages
            End Get
            Set(ByVal value As Boolean)
                Me.blnHasMessages = value
            End Set
        End Property

        Public Property IsEmpty() As Boolean
            Get
                Return Me.blnIsEmpty
            End Get
            Set(ByVal value As Boolean)
                Me.blnIsEmpty = value
            End Set
        End Property
#End Region

#Region "Public Functions"

#End Region

#Region "Public Procedures"

        Public Sub Refresh(Optional ByVal messageType As EnumMessageType = EnumMessageType.AllMessages)
            If oGsmModem.IsConnected Then
                Me.Clear()
                Dim messages() As SMSMessage = oGsmModem.GetSMSMessages(messageType)
                If Not messages Is Nothing Then
                    Dim i As Integer
                    Dim sms As SMSMessage
                    For i = 0 To messages.Length - 1
                        sms = messages(i)
                        sms.Modem = Me.Modem
                        Add(sms)
                    Next
                End If
            End If

        End Sub

        Default Public ReadOnly Property Message(ByVal index As Integer) As SMSMessage
            Get
                Return Item(index)
            End Get
        End Property

#End Region

#Region "Friend Procedures"

        Friend Overloads Function Add(ByVal value As SMSMessage) As SMSMessage
            ' After you inherit the CollectionBase class, you can access an intrinsic object
            ' called InnerList that represents your collection. InnerList is of type ArrayList.
            Me.InnerList.Add(value)
            Return value
        End Function

        Friend Overloads Function Item(ByVal index As Integer) As SMSMessage
            ' To retrieve an item from the InnerList, pass the index of that item to the .Item property.
            Return CType(Me.InnerList.Item(index), SMSMessage)
        End Function

        Friend Overloads Sub Remove(ByVal index As Integer)
            ' This Remove expects an index.
            Dim sms As SMSMessage
            sms = CType(Me.InnerList.Item(index), SMSMessage)
            If Not sms Is Nothing Then
                Me.InnerList.Remove(sms)
            End If
        End Sub

#End Region


    End Class

End Namespace

⌨️ 快捷键说明

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