加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

vb.net版机房重构--充值记录查询

发布时间:2020-12-17 07:31:45 所属栏目:百科 来源:网络整理
导读:前言 vb.net和VB两种的差距并不是非常大,但是使用起来还是有一些不同的,拿机房的充值记录查询功能实现来具体说明。使用 vs就比使用VB要简单很多,省去了很多人工的操作。 操作说明 在vb.net版机房收费系统中我对需求做了修改,学生端的充值记录查询就变成

前言

vb.net和VB两种的差距并不是非常大,但是使用起来还是有一些不同的,拿机房的充值记录查询功能实现来具体说明。使用 vs就比使用VB要简单很多,省去了很多人工的操作。

操作说明

在vb.net版机房收费系统中我对需求做了修改,学生端的充值记录查询就变成了如下界面:

1、 功能:当充值记录查询界面打开的时候学号会将登录界面的学号同步过来,相应的DataGridView中就会显示出相应的记录信息,无需再次查询,同时,也为了保护用户的信息,学生端的用户只能查询个人的信息。
2、接下来就谈谈DataGridView的具体使用,首次使用的时候会觉得有些困难,但是操作一遍之后再进行就会发现非常简单了。
(1)点击工具右上角的小三角,选择“获取项目数据源”,如图:


(2)根据出来的页面依次点击下一步即可

(3)然后点击如下图的新建链接

(4)根据如下图片进行填写内容

(5)点击确定后进行接下来的操作,本部分内容选择的数据表为recharge,为了进行各个dataset的区分,将其重新命名,如图:

(6)进行完以上操作之后设计结果如图,但是我们会发现它是将数据库中的表导出,那么这样不方便用户查看,我们就要进行相应的修改

(7)点击表的右上角的小三角,选择“编辑列”,然后修改外观的HeaderText,如图所示:

(8)修改完成之后就会看到如下图了,这样就更贴近客户了一些

(9)DataGridView还有非常好的一点就是简单方便,可以通过添加查询来实现表格和数据库中数据的链接,修改红框中的数据,这里需要根据自己的代码来写,如图所示:

(10)然后点击查询生成器,进行如下图的操作

(11)最后也就大功告成了!

(12)然后我们会发现有一些自动生成的代码

'TODO: 这行代码将数据加载到表“Rechargerecord.recharge”中。您可以根据需要移动或删除它。
        Me.RechargeTableAdapter.Fill(Me.Rechargerecord.recharge)
Private Sub FillByToolStripButton_Click(sender As Object,e As EventArgs) Handles FillByToolStripButton.Click
        Try
            Me.RechargeTableAdapter.FillBy(Me.Rechargerecord.recharge,UserNameToolStripTextBox.Text)
        Catch ex As System.Exception
            System.Windows.Forms.MessageBox.Show(ex.Message)
        End Try

    End Sub

部分代码展示
U层

Public Class U_Rechargerecord

    Private Sub U_Rechargerecord_Load(sender As Object,e As EventArgs) Handles MyBase.Load
        'TODO: 这行代码将数据加载到表“Rechargerecord.recharge”中。您可以根据需要移动或删除它。
        Me.RechargeTableAdapter.Fill(Me.Rechargerecord.recharge)
        '删除最后一行空行
        DataGridView1.AllowUserToAddRows = False
        '隐藏工具栏
        FillByToolStrip.Hide()

        '接下来要进行的就是将登录窗体的用户名传入此窗体的文本框中
        Dim facadeRechargerecord As New Facade.Fe_Rechargerecord
        Dim table As DataTable
        Dim UserInfo As New Entity.E_Rechargerecord
        table = facadeRechargerecord.CheckLink(UserInfo)
        txtstudentNo.Text = table.Rows(0)(1)
    End Sub

    Private Sub FillByToolStripButton_Click(sender As Object,UserNameToolStripTextBox.Text)
        Catch ex As System.Exception
            System.Windows.Forms.MessageBox.Show(ex.Message)
        End Try

    End Sub

    Private Sub txtstudentNo_TextChanged(sender As Object,e As EventArgs) Handles txtstudentNo.TextChanged
        '因为这里不需要点击按钮,txtstudentNo文本框中的数据直接接受登录窗体的用户名,所以这里需要
        '做的就是当文本框中同步登录窗体的内容时触发tool工具
        '将文本框中的值赋值给添加的查询tootextbox
        UserNameToolStripTextBox.Text = txtstudentNo.Text
        Try
            Me.RechargeTableAdapter.FillBy(Me.Rechargerecord.recharge,UserNameToolStripTextBox.Text)
        Catch ex As System.Exception
            System.Windows.Forms.MessageBox.Show(ex.Message)
        End Try
    End Sub


End Class

外观层

Public Class Fe_Rechargerecord
    Public Function CheckLink(ByVal UserInfo As Entity.E_Rechargerecord) As DataTable
        Dim isLink As New BLL.B_Rechargerecord
        Dim flag As DataTable
        flag = isLink.Link(UserInfo)
        Return flag
    End Function
End Class

B层

Public Class B_Rechargerecord
    Public Function Link(ByVal UserInfo As Entity.E_Rechargerecord) As DataTable
        Dim IRechargerecord As IDAL.I_Rechargerecord
        '调用创建用户的工厂方法
        IRechargerecord = Factory.Fy_Rechargerecord.CreateUserInterface
        Dim table As DataTable
        table = IRechargerecord.selectUser(UserInfo)
        Return table
    End Function
End Class

D层

Imports System.Data.SqlClient
Public Class D_Rechargerecord : Implements IDAL.I_Rechargerecord
    '声明并实例化sqlhelper类
    Private SqlHelper As SQLHelper.sqlhelper = New SQLHelper.sqlhelper
    '增删改查
    Public Function selectUser(UserInfo As Entity.E_Rechargerecord) As DataTable Implements IDAL.I_Rechargerecord.selectUser
        '定义
        Dim Sql As String
        '中间变量用于存储从数据库中查找信息
        Dim table As DataTable
        '声明并实例化参数数组
        '这里需要调用登录窗体的用户名
        Dim UserInfo1 As New Entity.E_Login
        Dim sqlParams As SqlParameter() = {New SqlParameter("@UserName",UserInfo.UserName = UserInfo1.UserName)}
        Sql = "select * from recharge where studentNo=@UserName"
        table = SqlHelper.GetDataTable(Sql,CommandType.Text,sqlParams)
        Return table
    End Function
End Class

计算机小白学习到了一个新的知识,兴奋!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读