📄 frmaddq.vb
字号:
'
Me._LblFields_1.BackColor = System.Drawing.SystemColors.Control
Me._LblFields_1.Cursor = System.Windows.Forms.Cursors.Default
Me._LblFields_1.Font = New System.Drawing.Font("华文行楷", 18.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(134, Byte))
Me._LblFields_1.ForeColor = System.Drawing.Color.FromArgb(CType(192, Byte), CType(0, Byte), CType(0, Byte))
Me.LblFields.SetIndex(Me._LblFields_1, CType(1, Short))
Me._LblFields_1.Location = New System.Drawing.Point(202, 17)
Me._LblFields_1.Name = "_LblFields_1"
Me._LblFields_1.RightToLeft = System.Windows.Forms.RightToLeft.No
Me._LblFields_1.Size = New System.Drawing.Size(68, 27)
Me._LblFields_1.TabIndex = 8
Me._LblFields_1.Text = "分值"
'
'_LblFields_0
'
Me._LblFields_0.BackColor = System.Drawing.SystemColors.Control
Me._LblFields_0.Cursor = System.Windows.Forms.Cursors.Default
Me._LblFields_0.Font = New System.Drawing.Font("华文行楷", 18.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(134, Byte))
Me._LblFields_0.ForeColor = System.Drawing.Color.FromArgb(CType(192, Byte), CType(0, Byte), CType(0, Byte))
Me.LblFields.SetIndex(Me._LblFields_0, CType(0, Short))
Me._LblFields_0.Location = New System.Drawing.Point(10, 17)
Me._LblFields_0.Name = "_LblFields_0"
Me._LblFields_0.RightToLeft = System.Windows.Forms.RightToLeft.No
Me._LblFields_0.Size = New System.Drawing.Size(68, 27)
Me._LblFields_0.TabIndex = 6
Me._LblFields_0.Text = "教师号"
'
'frmTestLib
'
Me.AutoScaleBaseSize = New System.Drawing.Size(6, 14)
Me.BackColor = System.Drawing.Color.FromArgb(CType(0, Byte), CType(192, Byte), CType(192, Byte))
Me.ClientSize = New System.Drawing.Size(410, 474)
Me.Controls.Add(Me.FrameChoice)
Me.Controls.Add(Me.FrameOpt)
Me.Controls.Add(Me.FrameMain)
Me.Cursor = System.Windows.Forms.Cursors.Default
Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None
Me.Name = "frmTestLib"
Me.RightToLeft = System.Windows.Forms.RightToLeft.No
Me.ShowInTaskbar = False
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
Me.FrameChoice.ResumeLayout(False)
Me.FrameOpt.ResumeLayout(False)
Me.FrameMain.ResumeLayout(False)
CType(Me.DataLibs, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LblFields, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.txtFields, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False)
End Sub
#End Region
#Region "升级支持"
Private Shared m_vb6FormDefInstance As frmTestLib
Private Shared m_InitializingDefInstance As Boolean
Public Shared Property DefInstance() As frmTestLib
Get
If m_vb6FormDefInstance Is Nothing OrElse m_vb6FormDefInstance.IsDisposed Then
m_InitializingDefInstance = True
m_vb6FormDefInstance = New frmTestLib()
m_InitializingDefInstance = False
End If
DefInstance = m_vb6FormDefInstance
End Get
Set
m_vb6FormDefInstance = Value
End Set
End Property
#End Region
Dim dbrs As ADODB.Recordset
Dim cmdType As Byte
'UPGRADE_WARNING: 初始化窗体时可能激发事件 CmbType.SelectedIndexChanged。 单击以获得更多信息:“ms-help://MS.VSCC.2003/commoner/redir/redirect.htm?keyword="vbup2075"”
Private Sub CmbType_SelectedIndexChanged(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles CmbType.SelectedIndexChanged '用户单击组合框,即选择了不同的题库
Dim i As Short
If Not dbrs Is Nothing Then '关闭已经打开的数据集
dbrs.Close()
End If
For i = 0 To 7
LblFields(i).Visible = True
txtFields(i).Visible = True
Next
CmdOk.Visible = True
CmdCancel.Visible = True
LblWelcome.Visible = False
DataLibs.Visible = True
CmdFirst.Enabled = True
CmdPrev.Enabled = True
CmdNext.Enabled = True
CmdLast.Enabled = True
CmdFilter.Enabled = True
CmdAdd.Enabled = True
CmdDel.Enabled = True
CmdUpdate.Enabled = True
Select Case CmbType.SelectedIndex '根据题库类型设置控件可见或可不见
Case 0
'UPGRADE_NOTE: 在对对象 dbrs 进行垃圾回收前,不可以销毁该对象。 单击以获得更多信息:“ms-help://MS.VSCC.2003/commoner/redir/redirect.htm?keyword="vbup1029"”
dbrs = Nothing
For i = 0 To 7
LblFields(i).Visible = False
txtFields(i).Visible = False
Next
LblWelcome.Visible = True
DataLibs.Visible = False
CmdFirst.Enabled = False
CmdPrev.Enabled = False
CmdNext.Enabled = False
CmdLast.Enabled = False
CmdFilter.Enabled = False
CmdAdd.Enabled = False
CmdDel.Enabled = False
CmdUpdate.Enabled = False
CmdOk.Visible = False
CmdCancel.Visible = False
Case 1
dbrs = DataEnv.rsFillingQ
For i = 3 To 6
LblFields(i).Visible = False
txtFields(i).Visible = False
Next
Case 2
dbrs = DataEnv.rsRorWQ
For i = 3 To 6
LblFields(i).Visible = False
txtFields(i).Visible = False
Next
Case 3
dbrs = DataEnv.rsSingleSelQ
Case 4
dbrs = DataEnv.rsMultiSelQ
Case 5
dbrs = DataEnv.rsEssayQ
For i = 3 To 6
LblFields(i).Visible = False
txtFields(i).Visible = False
Next
End Select
If Not dbrs Is Nothing Then '打开并在DataGrid控件中显示相应的数据集信息
DataLibs.Visible = True
dbrs.Open()
DataLibs.DataSource = dbrs
DataLibs.CtlRefresh()
End If
End Sub
Private Sub CmdAdd_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles CmdAdd.Click '用户单击添加按钮事件
DataLibs.Visible = False
FrameChoice.Enabled = False
FrameOpt.Enabled = False
CmdOk.Visible = True
CmdCancel.Visible = True
cmdType = 1
Dim i As Short
For i = 0 To 7
txtFields(i).Text = ""
Next
End Sub
Private Sub cmdCancel_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles cmdCancel.Click '用户单击取消按钮
FrameOpt.Enabled = True
FrameChoice.Enabled = True
DataLibs.Visible = True
End Sub
Private Sub CmdDel_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles CmdDel.Click '用户单击删除按钮事件
If Not dbrs Is Nothing Then
If Not dbrs.BOF And Not dbrs.EOF Then
dbrs.Delete(ADODB.AffectEnum.adAffectCurrent) '从数据集中删除掉当前游标位置的记录
End If
End If
End Sub
Private Sub CmdExit_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles CmdExit.Click '用户单击退出按钮时间
Me.Close()
End Sub
Private Sub CmdFilter_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles CmdFilter.Click
If Not dbrs Is Nothing Then
frmQuerryS.DefInstance.dbrs = dbrs
frmQuerryS.DefInstance.ShowDialog()
dbrs.Filter = frmQuerryS.DefInstance.QuerryString
frmQuerryS.DefInstance.Close()
End If
End Sub
Private Sub CmdFirst_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles CmdFirst.Click
If dbrs.RecordCount > 0 Then
dbrs.MoveFirst()
End If
End Sub
Private Sub CmdLast_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles CmdLast.Click
If dbrs.RecordCount > 0 Then
dbrs.MoveLast()
End If
End Sub
Private Sub CmdNext_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles CmdNext.Click
If Not dbrs.EOF Then
dbrs.MoveNext()
Else
MsgBox("已经达到数据表的末尾", MsgBoxStyle.Critical, "操作错误")
End If
End Sub
Private Sub cmdOK_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles cmdOK.Click '用户单击确定按钮
If cmdType = 1 Then '如果用户选择了添加,则向数据集中加入一行记录
dbrs.AddNew()
dbrs.Fields("QuestionID").Value = dbrs.RecordCount + 1
End If
dbrs.Fields("TeacherID").Value = CInt(txtFields(0).Text) '对记录的值进行修改
dbrs.Fields("Score").Value = CSng(txtFields(1).Text)
dbrs.Fields("Question").Value = txtFields(2).Text
Select Case CmbType.SelectedIndex '因为不同题库信息表的答案字段类型不同,因此作不同的处理。
Case 1, 5
dbrs.Fields("Answer").Value = txtFields(7).Text
Case 2
dbrs.Fields("Answer").Value = CBool(txtFields(7).Text)
Case 3
dbrs.Fields("Choice1").Value = txtFields(3).Text
dbrs.Fields("Choice2").Value = txtFields(4).Text
dbrs.Fields("Choice3").Value = txtFields(5).Text
dbrs.Fields("Choice4").Value = txtFields(6).Text
dbrs.Fields("Answer").Value = CByte(txtFields(7).Text)
Case 4
dbrs.Fields("Choice1").Value = txtFields(3).Text
dbrs.Fields("Choice2").Value = txtFields(4).Text
dbrs.Fields("Choice3").Value = txtFields(5).Text
dbrs.Fields("Choice4").Value = txtFields(6).Text
dbrs.Fields("Answer").Value = txtFields(7).Text
End Select
dbrs.Update()
FrameOpt.Enabled = True
FrameChoice.Enabled = True
DataLibs.Visible = True
End Sub
Private Sub CmdPrev_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles CmdPrev.Click
If Not dbrs.BOF Then
dbrs.MovePrevious()
Else
MsgBox("已经达到数据表的开头", MsgBoxStyle.Critical, "操作错误")
End If
End Sub
Private Sub CmdUpdate_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles CmdUpdate.Click '用户单击更新按钮
On Error Resume Next
DataLibs.Visible = False
FrameChoice.Enabled = False
FrameOpt.Enabled = False
CmdOk.Visible = True
CmdCancel.Visible = True
cmdType = 2
txtFields(0).Text = dbrs.Fields("TeacherID").Value '显示当前记录的信息
txtFields(1).Text = dbrs.Fields("Score").Value
txtFields(2).Text = dbrs.Fields("Question").Value
If CmbType.SelectedIndex = 3 Or CmbType.SelectedIndex = 4 Then
txtFields(3).Text = dbrs.Fields("Choice1").Value
txtFields(4).Text = dbrs.Fields("Choice2").Value
txtFields(5).Text = dbrs.Fields("Choice3").Value
txtFields(6).Text = dbrs.Fields("Choice4").Value
End If
txtFields(7).Text = dbrs.Fields("Answer").Value
End Sub
Private Sub frmTestLib_Load(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles MyBase.Load
CmbType.Items.Add("---题库---")
CmbType.Items.Add(" 填空题库 ")
CmbType.Items.Add(" 判断题库 ")
CmbType.Items.Add(" 单选题库 ")
CmbType.Items.Add(" 多选题库 ")
CmbType.Items.Add(" 问答题库 ")
CmbType.SelectedIndex = 0 '设置ListIndex的时候,自动触发CmdType_Click事件
LblWelcome.Left = VB6.TwipsToPixelsX(VB6.PixelsToTwipsX(FrameMain.Width) / 2 - VB6.PixelsToTwipsX(LblWelcome.Width) / 2)
LblWelcome.Top = VB6.TwipsToPixelsY(VB6.PixelsToTwipsY(FrameMain.Height) / 2 - VB6.PixelsToTwipsY(LblWelcome.Height) / 2)
LblWelcome.Visible = True
End Sub
'UPGRADE_WARNING: Form 事件 frmTestLib.Unload 具有新的行为。 单击以获得更多信息:“ms-help://MS.VSCC.2003/commoner/redir/redirect.htm?keyword="vbup2065"”
Private Sub frmTestLib_Closed(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles MyBase.Closed
If Not dbrs Is Nothing Then
dbrs.Close() '窗体卸载时,关闭数据库。
End If
'UPGRADE_NOTE: 在对对象 dbrs 进行垃圾回收前,不可以销毁该对象。 单击以获得更多信息:“ms-help://MS.VSCC.2003/commoner/redir/redirect.htm?keyword="vbup1029"”
dbrs = Nothing
End Sub
End Class
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -