📄 mainform.vb
字号:
MyRs.MoveFirst()
For i = 0 To MyRs.RecordCount - 1
If (MyRs.Fields(1).Value.ToString + MyRs.Fields(2).Value.ToString) = Me.TreeView1.SelectedNode.Text Then
Exit For
End If
MyRs.MoveNext()
Next
'使用此循环,根据在TreeView1控件中选择的职工的姓名
'在记录集中,将记录指针移到此职工的记录处
For i = 0 To MyRs.Fields.Count - 1
list = New Windows.Forms.ListViewItem()
'创建ListViewItem对象
list.Text = MyRs.Fields(i).Name
'设置ListViewItem对象的Text属性为记录集中的字段名称
Dim subItem As Windows.Forms.ListViewItem.ListViewSubItem
subItem = New Windows.Forms.ListViewItem.ListViewSubItem()
subItem.Text = MyRs.Fields(i).Value.ToString
'定义并创建ListViewSubItem对象
'设置为Text属性为记录集中的字段值
list.SubItems.Add(subItem)
'添加ListViewItem对象的子项
'子项的值为字段值
Me.ListView1.Items.Add(list)
'在ListView中添加新项
Next
RecNo = Val(MyRs.Fields(0).Value.ToString)
'将当前记录的主键字段值,也就是“编号”字段值
'保存到变量RecNo中
End Sub
Private Sub Mnu用户信息_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MnuItem用户信息.Click
Dim u As 用户信息
u = New 用户信息()
u.ShowDialog()
End Sub
Private Sub Mnu联系方式_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MnuItem联系方式.Click
Dim i As Integer
Dim f As 联系方式
Dim TempRs As ADODB.Recordset
f = New 联系方式()
TempRs = New ADODB.Recordset()
TempRs.Open("Select * From 联系方式 Where 编号=" + RecNo.ToString, MyCnn, ADODB.CursorTypeEnum.adOpenStatic, ADODB.LockTypeEnum.adLockOptimistic)
If TempRs.EOF And TempRs.BOF Then
f.editE_mail.Text = ""
f.edit办公室电话.Text = ""
f.edit家庭电话.Text = ""
f.edit手机.Text = ""
f.edit通信地址.Text = ""
Else
TempRs.MoveFirst()
f.editE_mail.Text = TempRs.Fields(4).Value.ToString
f.edit办公室电话.Text = TempRs.Fields(1).Value.ToString
f.edit家庭电话.Text = TempRs.Fields(2).Value.ToString
f.edit手机.Text = TempRs.Fields(3).Value.ToString
f.edit通信地址.Text = TempRs.Fields(5).Value.ToString
'打开相关的记录集,并在各TextBox控件中显示各字段的值
End If
If f.ShowDialog = DialogResult.OK Then
If TempRs.EOF And TempRs.BOF Then
TempRs.AddNew()
End If
'如果以前没有记录,添加一条新的记录
TempRs.Fields(4).Value = f.editE_mail.Text
TempRs.Fields(1).Value = f.edit办公室电话.Text
TempRs.Fields(2).Value = f.edit家庭电话.Text
TempRs.Fields(3).Value = f.edit手机.Text
TempRs.Fields(5).Value = f.edit通信地址.Text
TempRs.Update()
End If
TempRs.Close()
TempRs = Nothing
End Sub
Private Sub Mnu奖惩情况_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MnuItem奖惩情况.Click
Dim i As Integer
Dim f As 奖惩情况
f = New 奖惩情况()
f.ShowDialog()
End Sub
Private Sub MainForm_Closed(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Closed
End
End Sub
Private Sub Mnu人事变动_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MnuItem人事变动.Click
Dim i As Integer
Dim f As 人事变动
f = New 人事变动()
f.ShowDialog()
'将窗体“人事变动”以对话框的形式打开
End Sub
Private Sub Menu注销_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem注销.Click
User权限 = ""
Me.Hide()
Dim f As Login
f = New Login()
f.ShowDialog()
End Sub
Private Sub MenuItem添加_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem添加.Click
Dim i As Integer
Dim 编号(MyRs.RecordCount) As Integer
Dim New编号 As Integer
Dim flag As Boolean = False
New编号 = MyRs.RecordCount
MyRs.MoveFirst()
For i = 0 To MyRs.RecordCount - 1
编号(i) = Val(MyRs.Fields(0).Value.ToString)
MyRs.MoveNext()
Next
'将各记录的第一个字段的值依次存储到数组中
For i = 0 To MyRs.RecordCount - 1
If New编号 = 编号(i) Then flag = True
Next
Do While flag
New编号 = 10000 * Rnd()
flag = False
For i = 0 To MyRs.RecordCount - 1
If New编号 = 编号(i) Then flag = True
Next
Loop
'生成不重复的记录编号
MyRs.AddNew()
MyRs.Fields(0).Value = New编号
MyRs.Fields(1).Value = "姓" + New编号.ToString
MyRs.Fields(2).Value = "名" + New编号.ToString
MyRs.Update()
'添加新的记录
Me.TreeView1.Nodes.Clear()
MyRs.MoveFirst()
For i = 0 To MyRs.RecordCount - 1
Me.TreeView1.Nodes.Add(MyRs.Fields(1).Value.ToString + MyRs.Fields(2).Value.ToString)
MyRs.MoveNext()
Next
'刷新TreeView
End Sub
Private Sub ListView1_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles ListView1.DoubleClick
Dim i As Integer
MyRs.MoveFirst()
'将记录指针移到第一条记录
For i = 0 To MyRs.RecordCount - 1
If (MyRs.Fields(1).Value.ToString + MyRs.Fields(2).Value.ToString) = Me.TreeView1.SelectedNode.Text Then
Exit For
End If
MyRs.MoveNext()
Next
'根据在TreeView1控件中选中的项,设置当前记录指针位置
Dim NewValue As String
Dim OldValue As String
'定义字符串变量分别用来存储原来的值和修改后的值
Dim list As Windows.Forms.ListViewItem
list = Me.ListView1.SelectedItems(0)
'读取在ListView1中选中的行的第一项的值,即字段名称
Dim subItem As Windows.Forms.ListViewItem.ListViewSubItem
subItem = list.SubItems(1)
OldValue = subItem.Text
'读取在ListView1中选中的行的第二项的值,即字段值
NewValue = InputBox("请输入新值", "编辑", OldValue)
'显示编辑对话框
If NewValue <> OldValue Then
subItem.Text = NewValue
Me.ListView1.SelectedItems(0).SubItems(1) = subItem
MyRs.Fields(Me.ListView1.SelectedItems(0).Index).Value = NewValue
'编辑数据库中的值
If (Me.ListView1.SelectedItems(0).Index = 1) Or (Me.ListView1.SelectedItems(0).Index = 2) Then
Me.TreeView1.SelectedNode.Text = MyRs.Fields(1).Value.ToString + MyRs.Fields(2).Value.ToString
'刷新TreeView中的值
End If
End If
End Sub
Private Sub MenuItem删除_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem删除.Click
Dim i As Integer
MyRs.MoveFirst()
For i = 0 To MyRs.RecordCount - 1
If (MyRs.Fields(1).Value.ToString + MyRs.Fields(2).Value.ToString) = Me.TreeView1.SelectedNode.Text Then
Exit For
End If
MyRs.MoveNext()
Next
'查找在TreeView控件中当前选中的项在记录集中的位置
'并将该记录指针设置到此为止,使其成为当前记录,也就是当前操作对象
MyRs.Delete()
'删除记录
Me.TreeView1.Nodes.Clear()
MyRs.MoveFirst()
For i = 0 To MyRs.RecordCount - 1
Me.TreeView1.Nodes.Add(MyRs.Fields(1).Value.ToString + MyRs.Fields(2).Value.ToString)
MyRs.MoveNext()
Next
'刷新TreeView
End Sub
Private Sub MenuItem指定记录号_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem指定记录号.Click
On Error Resume Next
Dim NewValue, OldValue As Integer
OldValue = Me.TreeView1.SelectedNode.Index
NewValue = Val(InputBox("选择记录号", "选择记录号", OldValue))
If (NewValue > -1) And (NewValue < Me.TreeView1.GetNodeCount(False)) Then
If NewValue <> OldValue Then
Me.TreeView1.SelectedNode = Me.TreeView1.Nodes(NewValue)
End If
End If
End Sub
Private Sub MenuItem指定筛选条件_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem指定筛选条件.Click
Dim dlg As QueryForm
dlg = New QueryForm()
dlg.ShowDialog()
Me.TreeView1.SelectedNode = Me.TreeView1.Nodes(dlg.Query编号)
dlg = Nothing
End Sub
End Class
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -