⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 frmobject.vb

📁 这个是本人写的题库系统,开发工具是vb.net.试题编辑,试卷编辑,可以在word中编辑试题.由于时间关系,很多功能需要细化.
💻 VB
📖 第 1 页 / 共 4 页
字号:
                    MyObjt.ObjectResult = GetMemoString(rtb_result.TextRTF)
                    MyObjt.ObjectContext = GetMemoString(rtb_context.TextRTF)
                    MyObjt.ObjectTypeID = CurObjtType.ObjectTypeID
                    MyObjt.ChapterID = CurChp.ChapterID
                    If Not MyObjt.InsertDB() Then
                        MyObjt.Initials()
                        modify = 2
                    Else
                        CurObjt.Equal(MyObjt)
                        modify = 2
                        'Dim dbset As DataSet
                        dbsetobjt = MyObjt.GetObjDetails(CurChp.ChapterID, CurObjtType.ObjectTypeID)
                        If Not dbsetobjt Is Nothing Then
                            dg_object.DataSource = dbsetobjt.Tables(0).DefaultView
                            gb_objnum.Text = "总共有" & Str(dbsetobjt.Tables(0).Rows.Count) & "题"
                        End If
                    End If
                Catch
                    MsgBox("插入试题时异常", MsgBoxStyle.Exclamation, "翼清测试题库系统V1.0")
                    Exit Sub
                End Try
                Exit Sub
            End If 'modify 1

            If modify = 2 Then
                Try
                    If Comb_objtype.Text = "题型信息" Then
                        MsgBox("请选择正确的试题类型", MsgBoxStyle.Exclamation, "翼清测试题库系统V1.0")
                        Exit Sub
                    End If
                    If Trim(rtb_context.TextRTF.ToString) = "" Then
                        MsgBox("试题内容不能为空", MsgBoxStyle.Exclamation, "翼清测试题库系统V1.0")
                        rtb_context.Focus()
                        Exit Sub
                    End If
                    If Trim(rtb_context.TextRTF.ToString) = "" Then
                        If MsgBox("您确定试题答案可以为空", MsgBoxStyle.YesNo + MsgBoxStyle.Exclamation, "翼清测试题库系统V1.0") = MsgBoxResult.No Then
                            rtb_context.Focus()
                            Exit Sub
                        End If
                    End If
                    If CurChp.ChapterID <= 0 Then
                        MsgBox("请选择正确的章节", MsgBoxStyle.Exclamation, "翼清测试题库系统V1.0")
                        Comb_chapter.Focus()
                        Exit Sub
                    End If
                    If CurObjtType.ObjectTypeID <= 0 Then
                        MsgBox("请选择正确的章节", MsgBoxStyle.Exclamation, "翼清测试题库系统V1.0")
                        Comb_objtype.Focus()
                        Exit Sub
                    End If
                    MyObjt.ObjectID = CurObjt.ObjectID
                    MyObjt.ObjectName = CurObjt.ObjectName
                    MyObjt.ObjectOpPePo = CurUser.UserName
                    MyObjt.ObjectIdx = Comb_resultidx.Text
                    MyObjt.ObjectOpTime = Now()
                    MyObjt.ObjectResult = GetMemoString(rtb_result.TextRTF)
                    MyObjt.ObjectContext = GetMemoString(rtb_context.TextRTF)
                    MyObjt.ObjectTypeID = CurObjtType.ObjectTypeID
                    MyObjt.ChapterID = CurChp.ChapterID

                    If MyObjt.Modify() Then
                        dbsetobjt = MyObjt.GetObjDetails(CurChp.ChapterID, CurObjtType.ObjectTypeID)
                        If Not dbsetobjt Is Nothing Then
                            dg_object.DataSource = dbsetobjt.Tables(0).DefaultView
                            gb_objnum.Text = "总共有 " & Str(dbsetobjt.Tables(0).Rows.Count) & " 题"
                        End If
                        CurObjt.Equal(MyObjt)
                        If Clb_knowleg.Items.Count > 0 Then
                            Dim i As Integer
                            MyobjKD.DeleteByObj(CurObjt.ObjectID)
                            For i = 0 To Clb_knowleg.CheckedItems.Count - 1
                                MyobjKD.ObjectID = CurObjt.ObjectID
                                MyKnow.GetInfo(Clb_knowleg.CheckedItems.Item(i).ToString, CurChp.ChapterID)
                                MyobjKD.KnowlegID = MyKnow.KnowlegID
                                MyobjKD.InsertDB()
                            Next
                            MyKnow.Initials()
                        End If
                    End If
                Catch
                    MsgBox("保存试题时异常", MsgBoxStyle.Exclamation, "翼清测试题库系统V1.0")
                    Exit Sub
                End Try

            End If
        End If
    End Sub

    Private Sub cmd_objdelete_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmd_objdelete.Click
        If CurObjt.ObjectID <= 0 Then
            MsgBox("请选择试题", MsgBoxStyle.Exclamation, "翼清测试题库系统V1.0")
            dg_object.Focus()
            Exit Sub
        End If
        MyObjt.ObjectID = CurObjt.ObjectID
        rtb_context.TextRTF = ""
        rtb_result.TextRTF = ""
        If MyObjt.Delete() Then
            dbsetobjt = MyObjt.GetObjDetails(CurChp.ChapterID, CurObjtType.ObjectTypeID)
            If Not dbsetobjt Is Nothing Then
                dg_object.DataSource = dbsetobjt.Tables(0).DefaultView
                gb_objnum.Text = "总共有 " & Str(dbsetobjt.Tables(0).Rows.Count) & " 题"
            Else
                dg_object.DataSource = Nothing
                gb_objnum.Text = "总共有0题"
            End If
            CurObjt.Initials()
        End If
    End Sub
    Private Sub cmd_contextedit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmd_contextedit.Click
        ' If CurObjt.ObjectID <= 0 Then
        'Exit Sub
        ' End If
        Dim strpath As String
        strpath = Application.StartupPath & "\试题内容.rtf"
        Try
            rtb_context.SaveFile(strpath, RichTextBoxStreamType.RichText)
        Catch
            MsgBox("请关闭Word中的[试题内容]文档,从新操作,每次用Word编辑试题时,都要关闭文档后操作本功能", MsgBoxStyle.Exclamation, "翼清测试题库系统V1.0")
            Exit Sub
        End Try

        Try
            Dim wdapp As New Word.Application
            Dim doc As Word.Document
            wdapp.Visible = True
            Dim a As String
            doc = wdapp.Documents.Open(strpath)
            wdapp = Nothing
        Catch
            MsgBox("请关闭Word中的[试题内容]文档,从新操作,每次用Word编辑试题时,都要关闭文档后操作本功能", MsgBoxStyle.Exclamation, "翼清测试题库系统V1.0")
            Exit Sub
        End Try
    End Sub


    Private Sub cmd_resultedit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmd_resultedit.Click
        'If CurObjt.ObjectID <= 0 Then
        'Exit Sub
        'End If
        Dim strpath As String
        strpath = Application.StartupPath & "\试题答案.rtf"
        Try
            rtb_result.SaveFile(strpath, RichTextBoxStreamType.RichText)

        Catch
            MsgBox("请关闭Word中的[试题答案]文档,从新操作,每次用Word编辑试题时,都要关闭文档后操作本功能", MsgBoxStyle.Exclamation, "翼清测试题库系统V1.0")
            Exit Sub
        End Try
        Try
            Dim wdapp As New Word.Application
            Dim doc As Word.Document
            wdapp.Visible = True
            doc = wdapp.Documents.Open(strpath)
            wdapp = Nothing
        Catch
            MsgBox("请关闭Word中的[试题答案]文档,从新操作,每次用Word编辑试题时,都要关闭文档后操作本功能", MsgBoxStyle.Exclamation, "翼清测试题库系统V1.0")
            Exit Sub
        End Try
    End Sub

    Private Sub cmd_loadcontext_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmd_loadcontext.Click
        Dim strpath As String
        strpath = Application.StartupPath & "\试题内容.rtf"
        Try
            rtb_context.LoadFile(strpath, RichTextBoxStreamType.RichText)
        Catch
            MsgBox("请关闭Word中的[试题内容]文档,从新操作,每次用Word编辑试题时,都要关闭文档后操作本功能", MsgBoxStyle.Exclamation, "翼清测试题库系统V1.0")
            Exit Sub
        End Try
    End Sub

    Private Sub cmd_loadresult_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmd_loadresult.Click
        Dim strpath As String
        strpath = Application.StartupPath & "\试题答案.rtf"
        Try
            rtb_result.LoadFile(strpath, RichTextBoxStreamType.RichText)
        Catch
            MsgBox("请关闭Word中的[试题答案]文档,从新操作,每次用Word编辑试题时,都要关闭文档后操作本功能", MsgBoxStyle.Exclamation, "翼清测试题库系统V1.0")
            Exit Sub
        End Try
    End Sub

    Private Sub comb_qobjtype_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles comb_qobjtype.SelectedIndexChanged
        If CurObjtType.ObjectTypeName = Trim(comb_qobjtype.Text) Then
            Comb_objtype.SelectedText = comb_qobjtype.SelectedText
            Exit Sub
        End If
        Comb_objtype.SelectedText = comb_qobjtype.SelectedText
        rtb_context.TextRTF = ""
        rtb_result.TextRTF = ""
        MyObjtType.Initials()
        MyObjtType.GetInfo(MakeStr(comb_qobjtype.Text.ToString))
        CurObjtType.Equal(MyObjtType)
        'Dim dbset As DataSet
        dbsetobjt = MyObjt.GetObjDetails(CurChp.ChapterID, CurObjtType.ObjectTypeID)
        If Not dbsetobjt Is Nothing Then
            dg_object.DataSource = dbsetobjt.Tables(0).DefaultView
            gb_objnum.Text = "总共有" & Str(dbsetobjt.Tables(0).Rows.Count) & "题"
        Else
            dg_object.DataSource = Nothing
            gb_objnum.Text = "总共有0题"
        End If
    End Sub


    Private Sub cmd_frash_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmd_frash.Click
        If OpSubjt.SubjectID <= 0 Then
            MsgBox("请您选择当前操作科目", MsgBoxStyle.Exclamation, "翼清测试题库系统V1.0")
            CheckSelSub = False
            Exit Sub
        Else
            tv_chapter.Nodes.Clear()
            MyChp.LoadNodesBySubject(tv_chapter, OpSubjt.SubjectID)
            tv_chapter.Refresh()
            Dim objtypedbset As DataSet
            objtypedbset = MyObjtType.LoadObjTypes()
            Dim drow As DataRow
            comb_qobjtype.Items.Clear()
            Comb_objtype.Items.Clear()
            rtb_context.TextRTF = ""
            rtb_result.TextRTF = ""
            If Not objtypedbset Is Nothing Then
                For Each drow In objtypedbset.Tables(0).Rows
                    comb_qobjtype.Items.Add(drow.Item(1))
                    Comb_objtype.Items.Add(drow.Item(1))
                Next
                comb_qobjtype.SelectedIndex = 0
                Comb_objtype.SelectedIndex = 0
            End If
            Comb_subj.Items.Clear()
            Comb_subj.Items.Add(OpSubjt.SubjectName)
            Comb_subj.SelectedIndex = 0

            Comb_chapter.Items.Clear()
            Dim tmpchpdbset As DataSet
            tmpchpdbset = MyChp.GetChapterBySub(OpSubjt.SubjectID)
            If Not tmpchpdbset Is Nothing Then
                For Each drow In tmpchpdbset.Tables(0).Rows
                    Comb_chapter.Items.Add(drow.Item(1))
                Next
                Comb_chapter.SelectedIndex = 0
            End If


            lbl_opname.Text = CurUser.UserName

            Comb_resultidx.Items.Clear()
            Dim i As Integer = 0
            For i = 1 To 5
                Comb_resultidx.Items.Add(Str(i))
            Next
            Comb_resultidx.SelectedIndex = 2
        End If
    End Sub

    Private Sub dg_object_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles dg_object.Click
        If dg_object.CurrentRowIndex < 0 Then
            rtb_context.TextRTF = ""
            rtb_result.TextRTF = ""
            Exit Sub
        End If
        MyObjt.ObjectName = MakeStr(dg_object.Item(dg_object.CurrentRowIndex, 0))
        MyObjt.GetInfo(MyObjt.ObjectName)
        CurObjt.Equal(MyObjt)
        Comb_resultidx.Text = CurObjt.ObjectIdx.ToString
        rtb_context.TextRTF = CurObjt.ObjectContext
        rtb_result.TextRTF = CurObjt.ObjectResult
        lbl_objname.Text = CurObjt.ObjectName
        If Clb_knowleg.Items.Count < 0 Then
            Exit Sub
        Else
            Dim tempdbset As DataSet
            Dim tmpdrow As DataRow
            Dim ii As Integer
            For ii = 0 To Clb_knowleg.Items.Count - 1
                Clb_knowleg.SetItemCheckState(ii, CheckState.Unchecked)
            Next
            tempdbset = MyobjKD.GetByObj(CurObjt.ObjectID)
            If Not tempdbset Is Nothing Then
                For Each tmpdrow In tempdbset.Tables(0).Rows
                    Dim i As Integer
                    For i = 0 To Clb_knowleg.Items.Count - 1
                        If Clb_knowleg.Items(i).ToString = tmpdrow("KnowlegName").ToString Then
                            Clb_knowleg.SetItemCheckState(i, CheckState.Checked)
                        End If
                    Next
                Next
            End If
        End If
    End Sub

End Class

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -