📄 frmmain.frm
字号:
Me.MSComm1.Output = "AT+CBC?" & vbCr
Case "信号强度"
Me.MSComm1.Output = "AT+CSQ?" & vbCr
Case "fControl"
Me.MSComm1.Output = "AT+CPBS=" & Chr(34) & "ME" & Chr(34) & vbCr '选择不同的记忆体上存储的电话簿
Case "tControl"
Me.MSComm1.Output = "AT+CPBS=" & Chr(34) & "RC" & Chr(34) & vbCr '选择不同的记忆体上存储的电话簿
Case "Control"
Me.MSComm1.Output = "AT+CPBR=10,10" & vbCr '读存储的电话簿"
End Select
Exit Sub
Err1:
MsgBox "检查手机是否正确连接!" & vbCr & "[" & Err.Description & "]", vbCritical, "提示"
If frmSentB = True Then
frmSentB = False
End If
If frmPhoneB = True Then
frmPhoneB = False
End If
End Sub
Private Sub TreeView1_NodeClick(ByVal Node As MSComctlLib.Node)
Call TreeViewNodeClick(Node.Text)
End Sub
Private Sub TreeViewNodeClick(nodeTxt As String)
On Error Resume Next
Dim comNO As Integer
Dim telClass() As String
Dim telClassNum As Integer
Dim i As Integer
telClassNum = Me.cboClassify.ListCount
ReDim telClass(i) As String
For i = 0 To telClassNum - 1
telClass(i) = Me.cboClassify.List(i)
Next i
ListViewSel(0) = "" '短信编号
ListViewSel(1) = "" 'ListView选择行序号
comStatue = ""
Me.StatusBar1.Panels(3).Text = ""
ListView1.ListItems.Clear
Me.DBGrid1.Visible = False
Me.DBGrid2.Visible = False
Me.cboClassify.Visible = False
Data1.Recordset.Close
Data2.Recordset.Close
Me.ListView1.Visible = False
Select Case nodeTxt
'Case "我的信箱"
' comNO = 1
' comStatue = "RecAll"
' popMenuChoose = "smsMenu"
' Me.DBGrid1.Visible = False
' Me.ListView1.Visible = True
Case "未读短信"
comNO = 3
comStatue = "RecUnRead"
Call lViewHDChange("时间", "发送者", "手机号码", "未读短信内容")
Call lViewWChange(2000, 1500, 2000, 20000, 700)
popMenuChoose = "smsMenu"
Me.ListView1.Visible = True
Case "已读短信"
comNO = 2
comStatue = "RecRead"
Call lViewHDChange("时间", "发送者", "手机号码", "已读短信内容")
Call lViewWChange(2000, 1500, 2000, 20000, 700)
popMenuChoose = "smsMenu"
Me.ListView1.Visible = True
Case "已发短信"
comNO = 4
comStatue = "StoSent"
Call lViewHDChange("时间", "接收者", "手机号码", "发送短信内容")
Call lViewWChange(2000, 1500, 2000, 20000, 700)
popMenuChoose = "smsMenu"
Me.ListView1.Visible = True
Case "未发短信"
comNO = 5
comStatue = "StoUnSent"
Call lViewHDChange("时间", "接收者", "手机号码", "发送短信内容")
Call lViewWChange(2000, 1500, 2000, 20000, 700)
popMenuChoose = "smsMenu"
Me.ListView1.Visible = True
'Case "我的通讯簿"
' popMenuChoose = "phoneBookMenu"
' Me.DBGrid1.Visible = False
' Me.ListView1.Visible = True
Case "所有联系人(M)"
comNO = 8
comStatue = "rPhoneBook"
Call lViewHDChange("位置", "姓名", "手机号码", "备注")
Call lViewWChange(700, 1500, 2000, 700, 1)
popMenuChoose = "phoneBookMenuP"
Me.ListView1.Visible = True
'Case "所有联系人(D)", "亲人", "同学", "同事", "重要人士", "合作伙伴", "其它", "朋友"
' comStatue = ""
' 'Call lViewHDChange("位置", "姓名", "手机号码", "分类")
' 'Call lViewWChange(700, 1500, 2000, 1400, 1)
' popMenuChoose = "phoneBookMenuD"
' Me.DBGrid1.Visible = True
' Call listViewVD(nodeTxt, "mobile")
Case "接收短信", "发送短信"
comStatue = ""
'Call lViewHDChange("时间", "手机号码", "短信内容", "Mem")
'Call lViewWChange(700, 1500, 3400, 1, 1)
popMenuChoose = "phoneBookMenuD"
Me.DBGrid2.Visible = True
Call listViewVD(nodeTxt, "dataSms")
Case Else
For i = 0 To telClassNum
If nodeTxt = telClass(i) Then '"所有联系人(D)", "亲人", "同学", "同事", "重要人士", "合作伙伴", "其它", "朋友"
comStatue = ""
popMenuChoose = "phoneBookMenuD"
Me.DBGrid1.Visible = True
Call listViewVD(nodeTxt, "mobile")
Exit Sub
End If
Next i
End Select
Call rs232(comStatue, comNO)
'改变ListView快捷菜单 "显示时间"
If comStatue = "RecUnRead" Or comStatue = "RecRead" Then
Me.Pmenu.Item(5).Enabled = True
Else
Me.Pmenu.Item(5).Enabled = False
End If
End Sub
Private Sub listViewVD(op As String, delData As String)
Dim strSearch As String
Dim itmX As ListItem
Dim i As Integer
If delData = "mobile" Then
If op = "所有联系人(D)" Then
strSearch = "phonebook"
Else
strSearch = "select * from phonebook where classify='" & op & "'"
End If
Data1.RecordSource = strSearch
Data1.Refresh
Else
If op = "接收短信" Then
strSearch = "select * from readsms"
Else
strSearch = "select * from sentsms"
End If
Data2.RecordSource = strSearch
Data2.Refresh
End If
'If op = "其它" Then strSearch = "select * from phonebook where classify<> '亲人'and classify<> '同学' and classify<> '同事' and classify<> '重要人士' and classify<> '合作伙伴' and classify<> '朋友' or isnull(classify)"
End Sub
Private Sub lViewHDChange(h1 As String, h2 As String, h3 As String, h4 As String)
Me.ListView1.ColumnHeaders(1).Text = h1
Me.ListView1.ColumnHeaders(2).Text = h2
Me.ListView1.ColumnHeaders(3).Text = h3
Me.ListView1.ColumnHeaders(4).Text = h4
End Sub
Private Sub lViewWChange(w1 As Integer, w2 As Integer, w3 As Integer, w4 As Integer, w5 As Integer)
ListView1.ColumnHeaders(1).Width = w1
ListView1.ColumnHeaders(2).Width = w2
ListView1.ColumnHeaders(3).Width = w3
ListView1.ColumnHeaders(4).Width = w4
ListView1.ColumnHeaders(5).Width = w5
End Sub
Private Sub frmInit()
On Error GoTo Err1
Dim rootNode As Node
Dim nodx1, nodx2 As Node
Dim nodx As Node
Dim i As Integer
Dim dClassify As Recordset
Dim txtTmp As String
'For i = 1 To comNum
' Load Me.MSComm1(i)
'Next i
ReDim txtSmsBuffer(comNum) As String
TreeView1.LineStyle = tvwTreeLines '在兄弟节点和父节点之间显示线
TreeView1.ImageList = ImageList2 '链接图像列
TreeView1.Style = tvwTreelinesPlusMinusPictureText
Set rootNode = TreeView1.Nodes.Add(, , "\\SMS", "我的手机", 10)
rootNode.Expanded = True
Set nodx = TreeView1.Nodes.Add(rootNode.Key, tvwChild, "mySms", "我的信箱(手机)", 3)
nodx.Expanded = True
Set nodx = TreeView1.Nodes.Add("mySms", tvwChild, "RecUnRead", "未读短信", 5)
Set nodx = TreeView1.Nodes.Add("mySms", tvwChild, "RecRead", "已读短信", 12)
Set nodx = TreeView1.Nodes.Add("mySms", tvwChild, "StoSent", "已发短信", 13)
Set nodx = TreeView1.Nodes.Add("mySms", tvwChild, "StoUnSent", "未发短信", 14)
Set nodx = TreeView1.Nodes.Add(rootNode.Key, tvwChild, "myBook", "我的通讯簿", 2)
nodx.Expanded = True
Set nodx = TreeView1.Nodes.Add("myBook", tvwChild, "LinkMan1", "手机中", 4)
nodx.Expanded = True
Set nodx = TreeView1.Nodes.Add("LinkMan1", tvwChild, "LinkMan2", "所有联系人(M)", 4)
Set nodx = TreeView1.Nodes.Add("myBook", tvwChild, "LinkMan3", "数据库", 4)
nodx.Expanded = True
Set nodx = TreeView1.Nodes.Add("LinkMan3", tvwChild, "LinkMan4", "所有联系人(D)", 4)
Set dClassify = myDb.OpenRecordset("select * from classify order by index asc", dbOpenDynaset)
Me.cboClassify.Clear
i = 1
If Not IsNull(dClassify("classify")) Then
dClassify.MoveLast
dClassify.MoveFirst
Do While dClassify.EOF = False
txtTmp = DataRec(dClassify, "classify")
If txtTmp <> "" Then Set nodx = TreeView1.Nodes.Add("LinkMan3", tvwChild, "A" & txtTmp & i, txtTmp, 4)
Me.cboClassify.AddItem Trim(txtTmp)
dClassify.MoveNext
i = i + 1
Loop
' Set nodx = TreeView1.Nodes.Add("LinkMan3", tvwChild, "family", "亲人", 4)
' Set nodx = TreeView1.Nodes.Add("LinkMan3", tvwChild, "SchoolMate", "同学", 4)
' Set nodx = TreeView1.Nodes.Add("LinkMan3", tvwChild, "Confrere", "同事", 4)
' Set nodx = TreeView1.Nodes.Add("LinkMan3", tvwChild, "Friend", "朋友", 4)
' Set nodx = TreeView1.Nodes.Add("LinkMan3", tvwChild, "Personage", "重要人士", 4)
' Set nodx = TreeView1.Nodes.Add("LinkMan3", tvwChild, "Symbiosis", "合作伙伴", 4)
' Set nodx = TreeView1.Nodes.Add("LinkMan3", tvwChild, "Other", "其它", 4)
End If
Set nodx = TreeView1.Nodes.Add(rootNode.Key, tvwChild, "smsData", "短信历史记录", 11)
nodx.Expanded = True
Set nodx = TreeView1.Nodes.Add("smsData", tvwChild, "dataSMs1", "接收短信", 12)
Set nodx = TreeView1.Nodes.Add("smsData", tvwChild, "dataSms2", "发送短信", 13)
'Set nodx = TreeView1.SelectedItem
Exit Sub
Err1:
MsgBox "错误:" & vbCr & Err.Description, 16, "错误"
End Sub
Private Sub MoveCombo()
On Error Resume Next
Dim gcol As MSDBGrid.Column
Set gcol = DBGrid1.Columns(DBGrid1.Col)
If gcol.Caption = "分类" And Me.DBGrid1.CurrentCellVisible Then
Me.cboClassify.Move Me.DBGrid1.Left + gcol.Left, Me.DBGrid1.Top + Me.DBGrid1.RowTop(Me.DBGrid1.Row), gcol.Width ', Me.DBGrid1.RowTop(Me.DBGrid1.Row + 1) - Me.DBGrid1.RowTop(Me.DBGrid1.Row)
Me.cboClassify.ZOrder
Me.cboClassify.SetFocus
Me.cboClassify.Text = gcol.Text
Me.cboClassify.Visible = True
Exit Sub
Else
Me.cboClassify.Visible = False
End If
End Sub
Private Sub cboClassify_Click()
Me.DBGrid1.Columns("分类").Value = Me.cboClassify.Text
End Sub
Private Sub dBook_Click(Index As Integer)
Dim i As Integer
Dim intxt As String
Dim strSearch As String
Select Case Index
Case 1
Me.StatusBar1.Panels(3).Text = ""
Load frmSent
frmSent.lstTel.Clear
If DBGrid1.Visible = True Then
frmSent.lstTel.AddItem Me.DBGrid1.Columns("电话号码").Value
Else
frmSent.lstTel.AddItem Me.DBGrid2.Columns("电话号码").Value
End If
frmSent.Show 1
Case 3
'Set dSelTel = myDb.OpenRecordset("select * from phonebook where name like'" & Text1.Text & "*'", dbOpenDynaset)
frmTelS.Show 1
End Select
End Sub
Private Sub DBGrid1_ColResize(ByVal ColIndex As Integer, Cancel As Integer)
MoveCombo
End Sub
Private Sub DBGrid1_RowColChange(LastRow As Variant, ByVal LastCol As Integer)
MoveCombo
End Sub
Private Sub DBGrid1_RowResize(Cancel As Integer)
MoveCombo
End Sub
Private Sub DBGrid1_Scroll(Cancel As Integer)
MoveCombo
End Sub
Private Sub DBGrid1_SelChange(Cancel As Integer)
MoveCombo
End Sub
Private Sub DBGrid1_SplitChange()
MoveCombo
End Sub
Private Sub mobileInfo(Index As Integer, info As String)
Dim i As Integer
Dim j As Integer
Dim txtTmp As String
Dim txtTmp1 As String
Dim txtTmp2 As String
Select Case Index
Case 0
i = InStr(1, info, "+CGMI:")
If i < 1 Then Exit Sub
j = InStr(i + 1, info, Chr(13))
If j < 1 Then Exit Sub
frmPhoneInfo.labMobile(Index).Caption = Mid(info, i + 6, j - i - 6)
Case 1
i = InStr(1, info, "+GMM:")
If i < 1 Then Exit Sub
j = InStr(i + 1, info, Chr(13))
If j < 1 Then Exit Sub
frmPhoneInfo.labMobile(Index).Caption = Mid(info, i + 5, j - i - 5)
Case 2
i = InStr(1, info, "+CGSN:")
If i < 1 Then Exit Sub
j = InStr(i + 1, info, Chr(13))
If j < 1 Then Exit Sub
If frmPhoneB = True Then frmPhoneInfo.Text1.Text = Mid(info, i + 6, j - i - 6)
If frmSentB = True Then frmSent.Label2.Caption = Trim(Mid(info, i + 6, j - i - 6))
Case 3
i = InStr(1, info, "+CCLK:")
If i < 1 Then Exit Sub
j = InStr(i + 1, info, Chr(13))
If j < 1 Then Exit Sub
frmPhoneInfo.labMobile(Index).Caption = Mid(info, i + 6, j - i - 6)
Case 4
i = InStr(1, info, "+CBC:")
If i < 1 Then Exit Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -