📄 frmmain.frm
字号:
OleObjectBlob = "FrmMain.frx":002A
TabIndex = 3
Top = 240
Width = 9975
End
End
Begin MSComDlg.CommonDialog OFiles
Left = 6600
Top = 4200
_ExtentX = 847
_ExtentY = 847
_Version = 393216
End
Begin MSComctlLib.Toolbar tlbMain
Align = 1 'Align Top
Height = 510
Left = 0
TabIndex = 0
Top = 0
Width = 10500
_ExtentX = 18521
_ExtentY = 900
ButtonWidth = 794
ButtonHeight = 741
Appearance = 1
ImageList = "tlbImgList"
_Version = 393216
BeginProperty Buttons {66833FE8-8583-11D1-B16A-00C0F0283628}
NumButtons = 3
BeginProperty Button1 {66833FEA-8583-11D1-B16A-00C0F0283628}
Object.ToolTipText = "打开电话簿"
ImageIndex = 1
EndProperty
BeginProperty Button2 {66833FEA-8583-11D1-B16A-00C0F0283628}
Object.ToolTipText = "新建卡片夹"
ImageIndex = 3
EndProperty
BeginProperty Button3 {66833FEA-8583-11D1-B16A-00C0F0283628}
Object.ToolTipText = "删除"
ImageIndex = 4
EndProperty
EndProperty
Begin MSComctlLib.ImageList tlbImgList
Left = 6960
Top = 0
_ExtentX = 1005
_ExtentY = 1005
BackColor = -2147483643
ImageWidth = 23
ImageHeight = 22
MaskColor = 12632256
_Version = 393216
BeginProperty Images {2C247F25-8591-11D1-B16A-00C0F0283628}
NumListImages = 4
BeginProperty ListImage1 {2C247F27-8591-11D1-B16A-00C0F0283628}
Picture = "FrmMain.frx":09FD
Key = ""
EndProperty
BeginProperty ListImage2 {2C247F27-8591-11D1-B16A-00C0F0283628}
Picture = "FrmMain.frx":0DE4
Key = ""
EndProperty
BeginProperty ListImage3 {2C247F27-8591-11D1-B16A-00C0F0283628}
Picture = "FrmMain.frx":34BB
Key = ""
EndProperty
BeginProperty ListImage4 {2C247F27-8591-11D1-B16A-00C0F0283628}
Picture = "FrmMain.frx":5C8E
Key = ""
EndProperty
EndProperty
End
End
Begin MSComctlLib.TabStrip TabPages
Height = 6855
Left = 0
TabIndex = 1
Top = 480
Width = 10455
_ExtentX = 18441
_ExtentY = 12091
MultiRow = -1 'True
ImageList = "tlbImgList"
_Version = 393216
BeginProperty Tabs {1EFB6598-857C-11D1-B16A-00C0F0283628}
NumTabs = 2
BeginProperty Tab1 {1EFB659A-857C-11D1-B16A-00C0F0283628}
Caption = "查看所有"
ImageVarType = 2
ImageIndex = 2
EndProperty
BeginProperty Tab2 {1EFB659A-857C-11D1-B16A-00C0F0283628}
Caption = "查看个人信息"
ImageVarType = 2
ImageIndex = 3
EndProperty
EndProperty
End
Begin VB.Label Label10
Caption = "Label10"
Height = 1455
Left = 3120
TabIndex = 25
Top = 600
Width = 3375
End
Begin VB.Menu MFile
Caption = "地址簿管理(&F)"
Begin VB.Menu MFOpen
Caption = "打开地址蒲(&O)"
Shortcut = ^O
End
Begin VB.Menu MFNew
Caption = "创建新地址(&N)"
Shortcut = ^N
End
Begin VB.Menu MFDel
Caption = "删除地址"
End
Begin VB.Menu MFBar
Caption = "-"
End
Begin VB.Menu MFExit
Caption = "退出(&X)"
End
End
End
Attribute VB_Name = "FrmMain"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Public Sub RefreshAddress()
Rem 刷新树形控件,用于显示数据库中的地址个数及客户姓名
TreeView1.Nodes.Clear
Dim i As Integer
Dim TNode As Node
Data1.Recordset.MoveFirst
Rem 将Data控件的记录集中的“姓名”字段作为树形控件的标识字符串
While Not Data1.Recordset.EOF
Set TNode = TreeView1.Nodes.Add
If Not IsNull(Data1.Recordset.Fields("姓名")) Then
TNode.Text = Data1.Recordset.Fields("姓名")
End If
TNode.Key = "N" & CStr(Data1.Recordset.Fields(0))
TNode.Image = 3
Data1.Recordset.MoveNext
Wend
Data1.Recordset.MoveFirst
End Sub
Public Sub OpenAddressBook(FileName As String)
Rem 设置Data控件访问的数据库
Data1.DatabaseName = FileName
Rem 设置Data控件的数据源
Data1.RecordSource = "地址簿"
Data1.Refresh
Rem 刷新树形控件,显示客户个数和姓名
RefreshAddress
End Sub
Private Sub CmdPic_Click()
Rem 利用打开文件对话框选择照片文件,并显示在图像框中
On Error Resume Next
OFiles.Filter = "图片文件|*.bmp"
OFiles.CancelError = True
OFiles.ShowOpen
If Err.Number <> 0 Then
Err.Clear
Exit Sub
End If
Image1.Picture = LoadPicture(OFiles.FileName)
End Sub
Private Sub DBGrid1_RowColChange(LastRow As Variant, ByVal LastCol As Integer)
TreeView1.Nodes(DBGrid1.Row + 1).Selected = True
End Sub
Private Sub Form_Load()
Rem 窗体加载时,打开默认数据库
OpenAddressBook App.Path & "\MyAddressBook.mdb"
End Sub
Private Sub MFDel_Click()
Rem 删除Data控件的记录集中的当前行
Data1.Recordset.Delete
RefreshAddress
DBGrid1.Row = 0
TreeView1.Nodes(1).Selected = True
End Sub
Private Sub MFExit_Click()
End
End Sub
Private Sub MFNew_Click()
Dim i As Integer
Rem 向Data控件的记录集中添加新的记录
Data1.Recordset.AddNew
For i = 1 To 8
Data1.Recordset.Fields(i).Value = ""
Next
Rem 更新数据库
Data1.Recordset.Update
Rem 刷新树形控件
RefreshAddress
Rem 记录集指针指向新添加的记录
Data1.Recordset.MoveLast
Rem 选中第二个选项卡
TabPages.Tabs(2).Selected = True
End Sub
Private Sub MFOpen_Click()
On Error Resume Next
OFiles.Filter = "数据库文件|*.mdb"
OFiles.CancelError = True
OFiles.ShowOpen
If Err.Number <> 0 Then
Err.Clear
Exit Sub
End If
Rem 调用OpenAddressBook方法打开数据库
OpenAddressBook (OFiles.FileName)
End Sub
Private Sub TabPages_Click()
Rem 在显示全部信息的界面和显示个人信息的界面切换
If TabPages.SelectedItem.Index = 1 Then
Frame1.Visible = True
Frame2.Visible = False
Data1.Visible = False
Else
Frame1.Visible = False
Frame2.Visible = True
Data1.Visible = True
End If
End Sub
Private Sub tlbMain_ButtonClick(ByVal Button As MSComctlLib.Button)
Select Case Button.Index
Case 1
MFOpen_Click
Case 2
MFNew_Click
Case 3
MFDel_Click
End Select
End Sub
Private Sub TreeView1_NodeClick(ByVal Node As MSComctlLib.Node)
Rem 设置网络控件中的选中行与树形控件中的结点相对应
DBGrid1.Row = Node.Index - 1
End Sub
Private Sub txtName_Change()
If Not TreeView1.SelectedItem Is Nothing Then
TreeView1.SelectedItem.Text = txtName.Text
End If
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -