📄 formenroll.vb
字号:
'
Me.txtHomeAddress.Location = New System.Drawing.Point(72, 112)
Me.txtHomeAddress.Name = "txtHomeAddress"
Me.txtHomeAddress.Size = New System.Drawing.Size(192, 21)
Me.txtHomeAddress.TabIndex = 24
Me.txtHomeAddress.Text = ""
'
'txtHomePhone
'
Me.txtHomePhone.Location = New System.Drawing.Point(72, 136)
Me.txtHomePhone.Name = "txtHomePhone"
Me.txtHomePhone.Size = New System.Drawing.Size(192, 21)
Me.txtHomePhone.TabIndex = 25
Me.txtHomePhone.Text = ""
'
'txtPostalcode
'
Me.txtPostalcode.Location = New System.Drawing.Point(320, 112)
Me.txtPostalcode.Name = "txtPostalcode"
Me.txtPostalcode.Size = New System.Drawing.Size(112, 21)
Me.txtPostalcode.TabIndex = 26
Me.txtPostalcode.Text = ""
'
'txtEmail
'
Me.txtEmail.Location = New System.Drawing.Point(320, 136)
Me.txtEmail.Name = "txtEmail"
Me.txtEmail.Size = New System.Drawing.Size(112, 21)
Me.txtEmail.TabIndex = 27
Me.txtEmail.Text = ""
'
'lblIntro
'
Me.lblIntro.Location = New System.Drawing.Point(16, 192)
Me.lblIntro.Name = "lblIntro"
Me.lblIntro.Size = New System.Drawing.Size(40, 16)
Me.lblIntro.TabIndex = 28
Me.lblIntro.Text = "简介"
'
'dtpEnterDate
'
Me.dtpEnterDate.Location = New System.Drawing.Point(72, 160)
Me.dtpEnterDate.Name = "dtpEnterDate"
Me.dtpEnterDate.Size = New System.Drawing.Size(120, 21)
Me.dtpEnterDate.TabIndex = 29
'
'txtIntro
'
Me.txtIntro.Location = New System.Drawing.Point(16, 208)
Me.txtIntro.Multiline = True
Me.txtIntro.Name = "txtIntro"
Me.txtIntro.Size = New System.Drawing.Size(416, 120)
Me.txtIntro.TabIndex = 30
Me.txtIntro.Text = ""
'
'NativePlace1
'
Me.NativePlace1.Location = New System.Drawing.Point(200, 64)
Me.NativePlace1.Name = "NativePlace1"
Me.NativePlace1.Size = New System.Drawing.Size(184, 24)
Me.NativePlace1.TabIndex = 31
'
'cmStudent
'
Me.cmStudent.MenuItems.AddRange(New System.Windows.Forms.MenuItem() {Me.miEnroll, Me.miEditStudent})
'
'miEnroll
'
Me.miEnroll.Index = 0
Me.miEnroll.Text = "学生注册"
Me.miEnroll.Visible = False
'
'miEditStudent
'
Me.miEditStudent.Index = 1
Me.miEditStudent.Text = "修改学生"
Me.miEditStudent.Visible = False
'
'FormEnroll
'
Me.AutoScaleBaseSize = New System.Drawing.Size(6, 14)
Me.ClientSize = New System.Drawing.Size(648, 461)
Me.Name = "FormEnroll"
AddControl()
End Sub#End Region '添加控件到FormBase.GroupBox2中 Private Sub AddControl() '将所有控件添加到GroupBox1
Me.GroupBox1.Controls.Add(Me.lblStudentNumber)
Me.GroupBox1.Controls.Add(Me.txtStudentNumber)
Me.GroupBox1.Controls.Add(Me.txtName)
Me.GroupBox1.Controls.Add(Me.txtDorm)
Me.GroupBox1.Controls.Add(Me.lblName)
Me.GroupBox1.Controls.Add(Me.lblSex)
Me.GroupBox1.Controls.Add(Me.lblBirthday)
Me.GroupBox1.Controls.Add(Me.cmbSex)
Me.GroupBox1.Controls.Add(Me.dtpBirthday)
Me.GroupBox1.Controls.Add(Me.lblNation)
Me.GroupBox1.Controls.Add(Me.lblNativePlace)
Me.GroupBox1.Controls.Add(Me.lblProfession)
Me.GroupBox1.Controls.Add(Me.lblDorm)
Me.GroupBox1.Controls.Add(Me.lblPhone)
Me.GroupBox1.Controls.Add(Me.cmbNation)
Me.GroupBox1.Controls.Add(Me.cmbProfession)
Me.GroupBox1.Controls.Add(Me.cmbBusiness)
Me.GroupBox1.Controls.Add(Me.txtPhone)
Me.GroupBox1.Controls.Add(Me.lblBusiness)
Me.GroupBox1.Controls.Add(Me.lblHomeAddress)
Me.GroupBox1.Controls.Add(Me.lblHomePhone)
Me.GroupBox1.Controls.Add(Me.lblPostalcode)
Me.GroupBox1.Controls.Add(Me.lblEmail)
Me.GroupBox1.Controls.Add(Me.lblEnterDate)
Me.GroupBox1.Controls.Add(Me.txtHomeAddress)
Me.GroupBox1.Controls.Add(Me.txtHomePhone)
Me.GroupBox1.Controls.Add(Me.txtPostalcode)
Me.GroupBox1.Controls.Add(Me.txtEmail)
Me.GroupBox1.Controls.Add(Me.lblIntro)
Me.GroupBox1.Controls.Add(Me.dtpEnterDate)
Me.GroupBox1.Controls.Add(Me.txtIntro)
Me.GroupBox1.Controls.Add(Me.NativePlace1)
End Sub '读取窗体各控件值,并设置m_oStudent对象实例相应属性 Private Function GetControl() As Boolean
If Object.Equals(Me.m_oStudent, Nothing) Then
GetControl = False
Else
'读取控件值
Me.m_oStudent.Name = Me.txtName.Text
Me.m_oStudent.Dorm = Me.txtDorm.Text
Me.m_oStudent.Email = Me.txtEmail.Text
Me.m_oStudent.HomeAddress = Me.txtHomeAddress.Text
Me.m_oStudent.HomePhone = Me.txtHomePhone.Text
Me.m_oStudent.Intro = Me.txtIntro.Text
Me.m_oStudent.Phone = Me.txtPhone.Text
Me.m_oStudent.Postalcode = Me.txtPostalcode.Text
Me.m_oStudent.StudentNumber = Me.txtStudentNumber.Text
Me.m_oStudent.Business = Me.cmbBusiness.Text
Me.m_oStudent.Nation = Me.cmbNation.Text
'Me.m_oStudent.Profession.m_sName = Me.cmbProfession.Text
Me.m_oStudent.SetProfessionId(Me.cmbProfession.SelectedValue)
Me.m_oStudent.Sex = Me.cmbSex.Text
Me.m_oStudent.NativePlace = Me.NativePlace1.Text
Me.m_oStudent.Birthday = Me.dtpBirthday.Text
Me.m_oStudent.EnterDate = Me.dtpEnterDate.Text
GetControl = True
End If
End Function '根据m_oStudent对象实例的属性设置窗体各控件值 Private Function SetControl() As Boolean If Object.Equals(Me.m_oStudent, Nothing) Then
SetControl = False
Else
'设置控件值
Me.txtName.Text = Me.m_oStudent.Name
Me.txtDorm.Text = Me.m_oStudent.Dorm
Me.txtEmail.Text = Me.m_oStudent.Email
Me.txtHomeAddress.Text = Me.m_oStudent.HomeAddress
Me.txtHomePhone.Text = Me.m_oStudent.HomePhone
Me.txtIntro.Text = Me.m_oStudent.Intro
Me.txtPhone.Text = Me.m_oStudent.Phone
Me.txtPostalcode.Text = Me.m_oStudent.Postalcode
Me.txtStudentNumber.Text = Me.m_oStudent.StudentNumber
Me.cmbBusiness.Text = Me.m_oStudent.Business
Me.cmbNation.Text = Me.m_oStudent.Nation
Me.cmbProfession.Text = Me.m_oStudent.Profession.Name
Me.cmbSex.Text = Me.m_oStudent.Sex
Me.NativePlace1.Text = Me.m_oStudent.NativePlace
Me.dtpBirthday.Text = Me.m_oStudent.Birthday
Me.dtpEnterDate.Text = Me.m_oStudent.EnterDate
SetControl = True
End If
End Function '初始化TreeView Protected Overrides Sub InitTreeView() '清空节点
Me.tvStudent.Nodes(0).Nodes.Clear()
'添加右键菜单
Me.tvStudent.ContextMenu = Me.cmStudent
'填充节点
Dim dtTemp As DataTable = CommonDB.DbBase.DataInterface.Execute4DS("select stu_num,name,profession_id,profession_name,profession_intro,college_id,college_name,college_intro from v_student").Tables(0)
Dim tnRoot As TreeNode = tvStudent.Nodes(0)
Dim iPreviousCollegeId As Integer = 0
Dim iPreviousProfessionId As Integer = 0
Dim tnCurrentCollege, tnCurrentProfession, tnStudent As TreeNode
For Each drTemp As DataRow In dtTemp.Rows
If Not Object.Equals(drTemp(5), DBNull.Value) Then
If drTemp(5) <> iPreviousCollegeId Then
tnCurrentCollege = New TreeNode(drTemp(6), 1, 1)
tnCurrentCollege.Tag = drTemp(5)
tnRoot.Nodes.Add(tnCurrentCollege)
iPreviousCollegeId = drTemp(5)
End If
End If
If Not Object.Equals(drTemp(2), DBNull.Value) Then
If drTemp(2) <> iPreviousProfessionId Then
tnCurrentProfession = New TreeNode(drTemp(3), 2, 2)
tnCurrentProfession.Tag = drTemp(2)
tnCurrentCollege.Nodes.Add(tnCurrentProfession)
iPreviousProfessionId = drTemp(2)
End If
End If
If Not Object.Equals(drTemp(0), DBNull.Value) Then
tnStudent = New TreeNode(drTemp(1), 3, 3)
tnStudent.Tag = drTemp(0)
tnCurrentProfession.Nodes.Add(tnStudent)
End If
Next
tvStudent.ExpandAll()
End Sub '初始化窗体 Protected Overrides Sub Init() Me.Text = "学生注册"
lblCaption.Text = "学生注册 Enrollment"
btnOk.Text = "注册"
btnCancel.Text = "重置"
'Init ComboBox
cmbNation.Items.Clear()
cmbNation.DataSource = CommonDB.DbBase.DataInterface.Execute4DS("select id,name from nation").Tables(0).DefaultView
cmbNation.ValueMember = "id"
cmbNation.DisplayMember = "name"
cmbBusiness.Items.Clear()
cmbBusiness.DataSource = CommonDB.DbBase.DataInterface.Execute4DS("select id,name from business").Tables(0).DefaultView
cmbBusiness.ValueMember = "id"
cmbBusiness.DisplayMember = "name"
cmbProfession.Items.Clear()
cmbProfession.DataSource = CommonDB.DbBase.DataInterface.Execute4DS("select id,name from profession").Tables(0).DefaultView
cmbProfession.ValueMember = "id"
cmbProfession.DisplayMember = "name"
'AddControl()
Me.btnOk.Enabled = False
End Sub Protected Overrides Sub OK() If GetControl() Then
If Me.btnOk.Text = "注册" Then
Me.m_oStudent.Enroll()
Else
Me.m_oStudent.Update()
End If
InitTreeView()
Me.btnOk.Enabled = False
MessageBox.Show("学生" + Me.btnOk.Text + "成功!")
End If
End Sub Protected Overrides Sub Cancel() 'MessageBox.Show("Cancel")
SetControl()
End Sub Protected Overrides Sub FormClose() Me.m_oStudent = Nothing
End Sub Protected Overrides Sub SelectNode() '
End Sub Private Sub cmStudent_OnPopup(ByVal sender As Object, ByVal e As EventArgs) Handles cmStudent.Popup miEditStudent.Visible = False
miEnroll.Visible = False
If tvStudent.SelectedNode.ImageIndex = 2 Then
miEnroll.Visible = True
ElseIf tvStudent.SelectedNode.ImageIndex = 3 Then
miEditStudent.Visible = True
End If
End Sub Private Sub miEnroll_OnClick(ByVal sender As Object, ByVal e As EventArgs) Handles miEnroll.Click
Me.cmbProfession.SelectedValue = tvStudent.SelectedNode.Tag
Me.m_oStudent = New Student
Me.btnOk.Text = "注册"
Me.btnOk.Enabled = True
Me.txtStudentNumber.Focus()
End Sub Private Sub miEditStudent_OnClick(ByVal sender As Object, ByVal e As EventArgs) Handles miEditStudent.Click
Me.m_oStudent = New Student(tvStudent.SelectedNode.Tag)
If SetControl() Then
Me.btnOk.Text = "修改"
Me.btnOk.Enabled = True
End If
End SubEnd Class
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -