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

📄 frmnumstore.vb

📁 一个公司的光盘仓库管理软件源码
💻 VB
字号:
Imports System.Data
Imports System.Data.SqlClient

Public Class FrmNumStore
    Inherits System.Windows.Forms.Form

#Region " Windows 窗体设计器生成的代码 "

    Public Sub New()
        MyBase.New()

        '该调用是 Windows 窗体设计器所必需的。
        InitializeComponent()

        '在 InitializeComponent() 调用之后添加任何初始化

    End Sub

    '窗体重写 dispose 以清理组件列表。
    Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
        If disposing Then
            If Not (components Is Nothing) Then
                components.Dispose()
            End If
        End If
        MyBase.Dispose(disposing)
    End Sub

    'Windows 窗体设计器所必需的
    Private components As System.ComponentModel.IContainer

    '注意: 以下过程是 Windows 窗体设计器所必需的
    '可以使用 Windows 窗体设计器修改此过程。
    '不要使用代码编辑器修改它。
    Friend WithEvents GroupBox1 As System.Windows.Forms.GroupBox
    Friend WithEvents TreeView1 As System.Windows.Forms.TreeView
    Friend WithEvents BtnSave As System.Windows.Forms.Button
    Friend WithEvents OleDbConnection1 As System.Data.OleDb.OleDbConnection
    Friend WithEvents OleDbDataAdapter1 As System.Data.OleDb.OleDbDataAdapter
    Friend WithEvents OleDbSelectCommand1 As System.Data.OleDb.OleDbCommand
    Friend WithEvents DataSet1 As System.Data.DataSet
    Friend WithEvents OleDbCommand1 As System.Data.OleDb.OleDbCommand
    <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
        Me.GroupBox1 = New System.Windows.Forms.GroupBox
        Me.TreeView1 = New System.Windows.Forms.TreeView
        Me.BtnSave = New System.Windows.Forms.Button
        Me.OleDbConnection1 = New System.Data.OleDb.OleDbConnection
        Me.OleDbDataAdapter1 = New System.Data.OleDb.OleDbDataAdapter
        Me.OleDbSelectCommand1 = New System.Data.OleDb.OleDbCommand
        Me.DataSet1 = New System.Data.DataSet
        Me.OleDbCommand1 = New System.Data.OleDb.OleDbCommand
        Me.GroupBox1.SuspendLayout()
        CType(Me.DataSet1, System.ComponentModel.ISupportInitialize).BeginInit()
        Me.SuspendLayout()
        '
        'GroupBox1
        '
        Me.GroupBox1.Controls.Add(Me.TreeView1)
        Me.GroupBox1.Location = New System.Drawing.Point(64, 80)
        Me.GroupBox1.Name = "GroupBox1"
        Me.GroupBox1.Size = New System.Drawing.Size(480, 344)
        Me.GroupBox1.TabIndex = 0
        Me.GroupBox1.TabStop = False
        Me.GroupBox1.Text = "库位基础设置"
        '
        'TreeView1
        '
        Me.TreeView1.ImageIndex = -1
        Me.TreeView1.Location = New System.Drawing.Point(16, 24)
        Me.TreeView1.Name = "TreeView1"
        Me.TreeView1.SelectedImageIndex = -1
        Me.TreeView1.Size = New System.Drawing.Size(448, 304)
        Me.TreeView1.TabIndex = 0
        '
        'BtnSave
        '
        Me.BtnSave.Location = New System.Drawing.Point(584, 208)
        Me.BtnSave.Name = "BtnSave"
        Me.BtnSave.Size = New System.Drawing.Size(56, 32)
        Me.BtnSave.TabIndex = 1
        Me.BtnSave.Text = "save"
        '
        'OleDbDataAdapter1
        '
        Me.OleDbDataAdapter1.SelectCommand = Me.OleDbSelectCommand1
        '
        'OleDbSelectCommand1
        '
        Me.OleDbSelectCommand1.CommandText = "SELECT" & Microsoft.VisualBasic.ChrW(13) & Microsoft.VisualBasic.ChrW(10) & "FROM" & Microsoft.VisualBasic.ChrW(13) & Microsoft.VisualBasic.ChrW(10)
        '
        'DataSet1
        '
        Me.DataSet1.DataSetName = "NewDataSet"
        Me.DataSet1.Locale = New System.Globalization.CultureInfo("zh-CN")
        '
        'FrmNumStore
        '
        Me.AutoScaleBaseSize = New System.Drawing.Size(6, 14)
        Me.ClientSize = New System.Drawing.Size(768, 533)
        Me.Controls.Add(Me.BtnSave)
        Me.Controls.Add(Me.GroupBox1)
        Me.Name = "FrmNumStore"
        Me.Text = "IQC目盘库位设置"
        Me.GroupBox1.ResumeLayout(False)
        CType(Me.DataSet1, System.ComponentModel.ISupportInitialize).EndInit()
        Me.ResumeLayout(False)

    End Sub

#End Region

    '定义公用变量
    Dim myconnection As New OleDb.OleDbConnection
    Dim MyAdapater As New OleDb.OleDbDataAdapter
    Dim mycommand As New OleDb.OleDbCommand
    Dim ds As New DataSet

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        '载入根节点表至treeview中,作为第一级
        myconnection.ConnectionString = "Provider=MSDASQL.1;Persist Security Info=False;User ID=sa;Data Source=iqcstore;Initial Catalog=tempdb"  '数据库连接请自行更换
        mycommand.CommandText = "SELECT id,架 FROM 母盘库位表"
        mycommand.Connection = myconnection
        Try
            myconnection.Close()
            myconnection.Open()
            Dim mysqlreader As OleDb.OleDbDataReader = mycommand.ExecuteReader
            TreeView1.Nodes.Clear()
            While mysqlreader.Read()
                Dim tree_root As New TreeNode
                tree_root.Tag = mysqlreader.GetString(0) '把编号放入tag中
                tree_root.Text = mysqlreader.GetString(1) '树上显示的是根节点名称
                '请根据你数据库字段的类型来决定是否用getstring或其它类型
                TreeView1.Nodes.Add(tree_root)
            End While
        Catch ex As Exception
            MessageBox.Show(ex.ToString, "数据表根节点载入错误", vbOKOnly)
        Finally

            myconnection.Close()
        End Try
        TreeView1.ExpandAll()
        TreeView1.Select()

    End Sub
    '编写节点选择事件处理程序,以实现动态加载各级节点的子节点
    Private Sub TreeView1_AfterSelect(ByVal sender As System.Object, ByVal e As System.Windows.Forms.TreeViewEventArgs) Handles  TreeView1.AfterSelect
        Select Case NodeLevel(e.Node).ToString
            Case "1"
                If e.Node.GetNodeCount(False) = 0 Then
                    mycommand.CommandText = "select 第一级子节点编号,第一级子节点名称 from 第一级子节点 where 根节点编号 ='" & e.Node.Tag & "'"
                    fill_treeleaf()
                End If
            Case "2"
                If e.Node.GetNodeCount(False) = 0 Then
                    mycommand.CommandText = "select 第二级子节点编号,第二级子节点名称 from 第二级子节点 where 第一级子节点编号 ='" & e.Node.Tag & "'"
                    fill_treeleaf()
                End If
        End Select

    End Sub

    '对TreeView的点击,对于TreeView控件本身,并没有为哪一个级别的Node编写点击(选择)事件处理程序,而是把所有节点的点击事件都写入了一个AfterSelect事件中。因此,在编写点击加入子节点的程序之前,我们还必须编写一个查找点击的节点是哪一级节点的方法。
    Public Function NodeLevel(ByVal n As TreeNode) As Byte
        '* 找出树中当前节点的级数
        Dim i As Byte = 1
        Dim m As String
        Do Until n.Parent Is Nothing
            n = n.Parent
            i += 1
        Loop
        Return i
    End Function
    Public Sub fill_treeleaf()
        mycommand.Connection = myconnection
        Try
            myconnection.Open()
            Dim mysqlreader As OleDb.OleDbDataReader = mycommand.ExecuteReader
            While mysqlreader.Read()
                Dim tree_leaf As New TreeNode
                tree_leaf.Tag = mysqlreader.GetString(0)
                tree_leaf.Text = mysqlreader.GetString(1)
                TreeView1.SelectedNode.Nodes.Add(tree_leaf)
            End While
        Catch ex As Exception
            MsgBox(ex.Message)
        Finally
            myconnection.Close()
        End Try
    End Sub

    Private Sub FrmNumStore_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing
        Dim StrTemp As String
        StrTemp = Nothing

    End Sub
End Class



⌨️ 快捷键说明

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