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

📄 frmcategory.vb

📁 这是一个关于图书仓库管理系统的程序源代码。是我的毕业设计的作品
💻 VB
📖 第 1 页 / 共 2 页
字号:
        Me.GroupBox2.ResumeLayout(False)
        Me.ResumeLayout(False)

    End Sub

#End Region

    Private Sub frmCatagory_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        freshTree()

    End Sub


    Private Sub trvCategory_AfterSelect(ByVal sender As Object, ByVal e As System.Windows.Forms.TreeViewEventArgs) Handles trvCategory.AfterSelect
        With trvCategory.SelectedNode
            txtTypeID.Text = .Tag
            txtTypeName.Text = .Text

            If .ImageIndex = 0 Then
                cboUpperTypeName.Text = "0"
            Else
                cboUpperTypeName.Text = .Parent.Text
            End If
        End With
    End Sub

    Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAdd.Click
        txtTypeName.Enabled = True
        cboUpperTypeName.Enabled = True
        btnUpdate.Enabled = False
        btnDel.Enabled = False

        txtTypeID.Text = ""
        txtTypeName.Text = ""
        cboUpperTypeName.SelectedIndex = 0

        strCommand = "add"

    End Sub

    Private Sub btnUpdate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUpdate.Click
        txtTypeName.Enabled = True
        cboUpperTypeName.Enabled = True
        btnAdd.Enabled = False
        btnDel.Enabled = False

        strCommand = "update"
    End Sub

    Private Sub btnDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDel.Click
        If MsgBox("确定要删除商品类目:" & txtTypeName.Text & "?", MsgBoxStyle.OKCancel) = MsgBoxResult.OK Then

            Dim Params() As SqlParameter = {New SqlParameter("@TypeID", SqlDbType.Int), _
                          New SqlParameter("@TypeName", SqlDbType.VarChar), _
                         New SqlParameter("@Result", SqlDbType.Int)}
            txtTypeID.Enabled = True

            Params(0).Value = txtTypeID.Text.Trim()
            Params(1).Value = txtTypeName.Text.Trim()
            Params(2).Direction = ParameterDirection.Output

            myDataObj.ExecuteSP("sp_DelCategory", Params)
            If Params(2).Value = 0 Then
              
                Dim strSQL = "SELECT * FROM category WHERE TypeID='" & Params(0).Value & "'"
                myDataObj.ExecuteSQL(strSQL, drSqlServer)

                If drSqlServer.Read() Then
                    MsgBox("此类目已在其它地方引用,不可删除!", MsgBoxStyle.Information)

                Else

                    MsgBox("删除完毕", MsgBoxStyle.Information)
                End If

                drSqlServer.Close()
            Else
                MsgBox("该类还有下级类目,删除失败!", MsgBoxStyle.Exclamation)
            End If


            txtTypeID.ReadOnly = True
            freshTree()
        End If
    End Sub

    Private Sub btnOK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOK.Click

        If strCommand = "add" Then
            If txtTypeName.Text.Trim() = "" Or cboUpperTypeName.Text.Trim() = "" Then
                MsgBox("请完整填写详细", MsgBoxStyle.Exclamation)
                Exit Sub
            End If
            Dim Params() As SqlParameter = _
                        {New SqlParameter("@TypeName", SqlDbType.VarChar), _
                          New SqlParameter("@UpperType", SqlDbType.VarChar), _
                         New SqlParameter("@Result", SqlDbType.Int)}

            Params(0).Value = txtTypeName.Text.Trim()
            Params(1).Value = cboUpperTypeName.Text.Trim()
            Params(2).Direction = ParameterDirection.Output
            myDataObj.ExecuteSP("sp_InsertCategory", Params)

            If params(2).Value = 0 Then
                MsgBox("添加完毕", MsgBoxStyle.Information)
            Else
                MsgBox("已经存在该类,添加失败", MsgBoxStyle.Exclamation)
            End If

            freshTree()
        ElseIf strCommand = "update" Then

            If txtTypeName.Text.Trim() = "" Or cboUpperTypeName.Text.Trim() = "" Then
                MsgBox("请完整填写详细", MsgBoxStyle.Exclamation)
                Exit Sub
            End If
            Dim Params() As SqlParameter = _
                        {New SqlParameter("@TypeID", SqlDbType.Int), _
                          New SqlParameter("@TypeName", SqlDbType.VarChar), _
                          New SqlParameter("@UpperType", SqlDbType.VarChar)}

            Params(0).Value = txtTypeID.Text.Trim()
            Params(1).Value = txtTypeName.Text.Trim()
            Params(2).Value = cboUpperTypeName.Text.Trim()
            myDataObj.ExecuteSP("sp_UpdateCategory", Params)
            MsgBox("更新完毕", MsgBoxStyle.Information)
            freshTree()
        Else
            Me.Close()
        End If

        txtTypeName.Enabled = False
        cboUpperTypeName.Enabled = False
        btnAdd.Enabled = True
        btnUpdate.Enabled = True
        btnDel.Enabled = True

        strCommand = ""
    End Sub

    Private Sub btnCancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancel.Click
        If strCommand = "add" Then
            txtTypeID.Text = ""
            txtTypeName.Text = ""
            cboUpperTypeName.SelectedIndex = 0
            btnAdd.Enabled = True
            btnUpdate.Enabled = True
            btnDel.Enabled = True
            txtTypeName.Enabled = False
            cboUpperTypeName.Enabled = False
        ElseIf strCommand = "update" Then
            btnAdd.Enabled = True
            btnUpdate.Enabled = True
            btnDel.Enabled = True
            txtTypeName.Enabled = False
            cboUpperTypeName.Enabled = False
        Else
            Me.Close()
        End If
        strCommand = ""
    End Sub


    Private Sub freshTree()
        '与数据表category关联
        Dim iTypeID As Integer
        Dim tmpDataReader As SqlDataReader
        trvCategory.Nodes.Clear()
        cboUpperTypeName.Items.Clear()

        Dim strSQL = "SELECT * FROM category WHERE UpperType='0'"
        myDataObj.ExecuteSQL(strSQL, drSqlServer)
        cboUpperTypeName.Items.Add("0")
        While drSqlServer.Read()
            Dim nodex As New TreeNode
            nodex.Text = drSqlServer(1)
            nodex.ImageIndex = 0        '表示顶级节点
            nodex.Tag = drSqlServer(0)

            trvCategory.Nodes.Add(nodex)
            cboUpperTypeName.Items.Add(drSqlServer(1))

        End While
        drSqlServer.Close()

        Dim iNodeNum As Integer = trvCategory.GetNodeCount(False)
        Dim i As Integer
        For i = 0 To iNodeNum - 1
            Dim node1 As New TreeNode
            strSQL = "SELECT * FROM category WHERE UpperType= '" & trvCategory.Nodes.Item(i).Text & "'"
            myDataObj.ExecuteSQL(strSQL, tmpDataReader)

            While tmpDataReader.Read()
                node1.Tag = tmpDataReader(0)    '类型ID
                node1.Text = tmpDataReader(1)   '类型名称
                trvCategory.Nodes.Item(trvCategory.Nodes.Item(i).Index).Nodes.Add(node1)
                'trvCategory.Nodes.Item(trvCategory.Nodes.Item(i).Index).Nodes.Add(node1)
            End While
            tmpDataReader.Close()
        Next
    End Sub


    Private Sub GroupBox2_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles GroupBox2.Enter

    End Sub
End Class

⌨️ 快捷键说明

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