vb.net版机房重构--充值记录查询
2017-07-16 21:55
176 查看
前言
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, 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
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
计算机小白学习到了一个新的知识,兴奋!
相关文章推荐
- 【机房重构】——查看上机记录、充值记录+三层+存储过程+模板方法
- VB.NET版机房重构----模板方法+存储过程实现组合查询
- VB.net版机房个人重构中组合查询的面向对象
- 【机房重构】余额返还信息查询(DateTimePicker与DataGridView的使用)
- 蠡测机房重构之组合查询
- 机房重构之模版方法实现组合查询
- 机房重构—组合查询&模板方法
- 机房收费系统个人重构版2——组合查询之模板方法
- 机房重构之组合查询
- 机房重构之充值
- 【机房重构】奋斗组合查询
- 机房重构——Pramaters_变量名 '@UserID' 已声明。变量名在查询批次或存储过程内部必须唯一
- VB.net版机房人重构中的结账之音符
- 机房重构之组合查询
- 【机房重构】-组合查询之模版模式
- 组合查询(机房重构知识点总结)
- 机房重构——组合查询
- VB.NET版机房重构之存储过程+事务实现注册
- VB.NET版机房重构---类图,时序图
- 学生查询充值记录之一——返回DateTable