📄 frmempsel.vb
字号:
'Imports VB = Microsoft.VisualBasic
Friend Class FrmEmpSel
Inherits System.Windows.Forms.Form
Private Sub Cmd_Cancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Cmd_Cancel.Click
Me.Close()
End Sub
Private Sub ComboState_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboState.SelectedIndexChanged
'根据ComboState的值刷新AdoEmpNameList,并更新DataList1的内容
Dim SQLString As String
Dim MSG As String
SQLString = "SELECT Emp_Id, Emp_Name FROM Employees WHERE Dep_Id=" & Trim(Str(CurDep.Dep_Id)) & " And State=" & Trim(Str(ComboState.SelectedIndex + 1))
Dim DTable As DataTable = ClsOperation.DBOperate(SQLString, MSG)
ListBox1.DataSource = DTable
ListBox1.DisplayMember = "Emp_Name"
ListBox1.ValueMember = "Emp_Id"
ListBox1.Refresh()
End Sub
Private Sub FrmEmpSel_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim Focuskey As Object
Dim FocusDepName As Object
Dim TmpNode As System.Windows.Forms.TreeNode
FocusDepName = "公司领导"
Focuskey = ""
TreeView1.Nodes.Clear()
'设置根结点
TmpNode = TreeView1.Nodes.Add("a0", "部门信息", 1, 3)
TmpNode.Checked = True
TmpNode.SelectedImageIndex = 2
'调用函数将所有部门添加到TreeView1中
Add_DepToTree(TreeView1, "a0")
ComboState.SelectedIndex = 0
End Sub
Private Sub TreeView1_AfterSelect(ByVal sender As Object, ByVal e As System.Windows.Forms.TreeViewEventArgs) Handles TreeView1.AfterSelect
Dim Focuskey As String
'根据关键字获取部门信息
If TreeView1.SelectedNode Is Nothing Then
Exit Sub
End If
Focuskey = TreeView1.SelectedNode.Name
CurDep.Dep_name = TreeView1.SelectedNode.Text
CurDep.Dep_Id = Val(Microsoft.VisualBasic.Right(TreeView1.SelectedNode.Name, Len(TreeView1.SelectedNode.Name) - 1))
Dim SQLString As String
Dim MSG As String
Dim DTable As DataTable
If Focuskey = "a0" Then '根结点
SQLString = "SELECT * FROM Employees WHERE Dep_Id<0"
DTable = ClsOperation.DBOperate(SQLString, MSG)
ListBox1.DataSource = DTable
ListBox1.DisplayMember = "Emp_Name"
ListBox1.ValueMember = "Emp_Id"
ListBox1.Refresh()
Exit Sub
End If
'如果包含子结点,则设置图像格式
If CurDep.HaveSon(CurDep.Dep_Id) = False Then
TreeView1.SelectedNode.SelectedImageKey = 2
TreeView1.SelectedNode.ImageIndex = 0
TreeView1.SelectedNode.SelectedImageIndex = 2
End If
'读取CurDep中的所有部门信息
CurDep.GetInfo((CurDep.Dep_Id))
'根据选择的部门编号刷新AdoEmpNameList1,从而选择符合条件的员工姓名
SQLString = "SELECT Emp_Id, Emp_Name FROM Employees WHERE Dep_Id=" & Trim(Str(CurDep.Dep_Id)) & " And State=" & Trim(Str(ComboState.SelectedIndex + 1))
DTable = ClsOperation.DBOperate(SQLString, MSG)
ListBox1.DataSource = DTable
ListBox1.DisplayMember = "Emp_Name"
ListBox1.ValueMember = "Emp_Id"
ListBox1.Refresh()
End Sub
Private Sub ListBox1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles ListBox1.Click
If ListBox1.SelectedItem Is Nothing Then
MyEmp.Init()
Exit Sub
End If
'读取当前员工信息到Myemp
MyEmp.GetInfo(CInt(ListBox1.SelectedValue))
End Sub
Private Sub BtnOK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnOK.Click
If MyEmp.Emp_Id <= 0 Then
MsgBox("请选择员工")
Exit Sub
End If
'将选择员工的数据保存在UpperEmp变量中
UpperEmp.Emp_Id = MyEmp.Emp_Id
UpperEmp.GetInfo(UpperEmp.Emp_Id)
Me.Close()
End Sub
End Class
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -