![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
机房
汇总学生机房收费管理系统,包括VB版,C# 版本的系统,整理总结开发过程中遇到的一系列问题及解决方案
温娉哲
I can do this all day
展开
-
学生信息管理系统之优化问题续
一、密码输入剩余次数提醒用户 当输入第一次密码错误时,提醒用户还有俩次机会,当输入第二次密码时,提醒用户还有一次机会,当输入第三次密码时,提醒用户还有零次机会。 '记载输入密码次数 micount = micount + 1 cishu = 3 - micount MsgBox "你还有" & cishu & "次登陆" If micount = 3 Then原创 2017-08-24 21:26:17 · 972 阅读 · 49 评论 -
学生信息管理系统之优化问题
一、登录窗体文本框中内容居中显示 代码修改: text控件的Alignment属性: text.Alignment=0 左对齐 text.Alignment=1 右对齐 text.Alignment=2 居中对齐 属性设置: 二、设置窗体大小 可通过height和width属性设置窗体的外部高度和宽度,包括边框和标题栏。原创 2017-08-20 21:30:34 · 941 阅读 · 50 评论 -
学生信息管理系统之函数功能与报错
一、testTXT函数 '判断是否为空' If Not Testtxt(txtclassno.Text) Then MsgBox "请输入课程编号!", vbOKOnly + vbExclamation, "警告" txtclassno.SetFocus '聚焦 Exit Sub End If二、...原创 2017-08-19 16:57:35 · 953 阅读 · 44 评论 -
学生信息管理系统之ASCII问题汇总
前言学生信息管理的优化阶段,需要注意很多由ASCII限制字符的问题,我汇总了一下。首先附上一张ASCII对照表:主要内容1、登录界面的用户名禁止输入特殊字符Private Sub txtusername_KeyPress(KeyAscii As Integer) If KeyAscii = 8 Then Exit Sub If (KeyAscii ...原创 2017-08-16 17:41:27 · 960 阅读 · 26 评论 -
学生信息管理系统之优化注意事项
根据这几天和大家的交流,我总结了以下几方面,也许不是最全面的,但是已经囊括了大部分需要优化的方面,欢迎大家来给我补充.一、限制问题文本框长度限制(例如:联系电话长度,分数长度,班号,课程编号,用户名长度,密码长度),类型(text,combox) 下拉菜单设置为只能选择不能自己输入 防止重复添加二、ASCII码控制只可输入数字 只可输入文字 限制输入特殊字符 只可输入...原创 2017-08-14 21:24:09 · 1541 阅读 · 40 评论 -
机房收费系统结项总结
前言 机房收费系统是继学生信息管理系统之后的另一个完整系统,与学生信息管理系统不同的是,此系统并没有提供源码,而且系统用户关系相对复杂,涉及到报表等之前没有接触过的东西,同时,表与表之间的关系也比较复杂,会涉及到多表查询的问题,所以无论是涉及窗体还是写程序,要求都能够很清楚的理清本系统之间的关系。 看了一下自己今目标建项目的开始时间是十月初,昨天结的项目,历时将近三原创 2018-01-02 19:17:25 · 597 阅读 · 31 评论 -
机房收费系统——导出Excel表
前言 机房收费系统进行了很长时间,其中很典型的一个功能就是导出Excel表格,很多窗体都需要实现这个功能。主要内容 首先需要在VB的“工程”→引用 Microsoft Excel 15.0object library 然后从VB中的MSHFlexGrid中导出数据,代码实现如下:Private Sub cmdoutput_Clic原创 2018-01-01 20:47:42 · 627 阅读 · 13 评论 -
机房收费系统上下机
前言 机房收费系统最关键的几个部分包括上下机,组合查询,结账。上下机这部分主要还是理逻辑关系,理清各个窗体之间的关系,还有表与表之间的关系。把基本功能实现之后,自己就会发现原来需要注意和完善的地方还有很多,需要我们认真细心去对待。主要内容 由于frmMain窗体为MDI窗体,所以不能直接添加控件,需要借助picturebox。 上机涉及到的原创 2018-01-01 19:28:53 · 578 阅读 · 23 评论 -
机房收费系统之登录
前言 今天要写的这篇博客是关于登录窗体的,虽然大家普遍都认为登录窗体简单,但是切勿眼高手低,一定要动手去做,只有自己真正做了之后才会发现自己欠考虑的地方在哪里。主要内容 在敲窗体代码之前建议画一张窗体逻辑图来整理思路,这样在敲的过程中才会有规可循,效率也更高效。登录窗体涉及的数据表有User表,onwork表和worklogbn。下面画了一张窗体逻辑图整理了自己的原创 2017-12-22 08:41:05 · 566 阅读 · 30 评论 -
机房收费系统问题汇总
前言在敲机房的过程中遇到了很多错误,整理了一些自己遇到的,以便后续学习中方便查询使用。主要内容1·Msgbox重复提示解决方法在每一个IF和end IF语句块中的end IF之前加 exit sub ,重复提示的问题就解决了2·日结和周结报表中插入自己设计的报表,显示“没有分配到需要的内存,任务已经终止”原因是VB自带的Grid++report是5.5版本的,而我的原创 2017-12-19 20:21:08 · 1475 阅读 · 28 评论 -
机房收费系统----逻辑关系篇
机房收费系统原创 2017-11-05 21:39:01 · 677 阅读 · 24 评论 -
【牛腩】——如何为类文件自动添加头注释?
前言论如何写出优秀的代码注释?写代码和注释的第一目的是帮助人理解代码,理解作者的意图。所以优秀的代码本身就有自说明的功能,但是在代码本身无法阐述作者意图时,需要考虑写注释,注释也是为了为后继开发者以及代码维护者提供了方便。我们知道,写代码要写注释,甚至听说代码的20%是注释,然后我们就认真对待写注释,后来看书多了,了解了敏捷开发,知道了好的代码是不需要注释这么一说的,当然,好的代码本身就是...原创 2018-09-29 09:21:07 · 593 阅读 · 101 评论 -
【重构】C#——Datatable转泛型
DataTable是一个临时保存数据的网络虚拟表,比如在U层调用表中字段的时候,写代码dt.rows[0][1],返回DateTable表中第一行第二列的值,我这样我们必须知道数据库中的表是什么样的,如果用泛型:mylist[0].unitTime.ToString不需要知道数据库中有什么,直接点一下想要那个字段就直接出来了,如果我们一人负责一层,如果我们负责的是U层,并不知道D层DataTabl...转载 2018-09-25 15:21:38 · 441 阅读 · 31 评论 -
【重构】C#——增删改查语句汇总
前言重构过程中,D层来实现接口层的方法,进行的是直接操作数据库,针对数据的插入,更新,删除,查找 四种操作,主要是用来和数据库进行直接交互。每一种数据操作都有固定的格式,下面就对增删改查这四种操作格式进行一个总结,每一种都举栗子来说明。内容1、插入//插入记录到onwork表中 public DataTable Insert(Entity.OnWorkInfo o...原创 2018-09-25 14:30:03 · 1231 阅读 · 24 评论 -
【重构】C#——存储过程
存储过程 存储过程是在大型数据库系统中,一组为了完成特定功能的SQL语句集,存储在数据库中,经过第一次编译后再次调用不需要再次编译,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。存储过程是数据库中的一个重要对象。1、为什么要使用存储过程?目的:解决代码冗余的问题。在机房重构进行组合查询时,如果不用存储过程的话,每一个条件都查询一次,都查...原创 2018-09-25 08:42:46 · 692 阅读 · 22 评论 -
【重构】C#——登录权限的判别
针对不同的用户,用户权限是不一样的,不同权限的用户登录系统之后显示的界面也应该不同,这就需要加入用户权限的判别了。主界面代码: //判断用户权限 Entity.UserInfo user = new Entity.UserInfo(); user.userid = frmLogin.Globaldata1.UserName; ...原创 2018-09-17 11:09:38 · 745 阅读 · 14 评论 -
【重构】C#——如何解决VS2017没有报表控件的问题
前言重构接近尾声时,发现自己的VS2017版本中没有报表这个控件,需要自己手动添加一下,如果自己安装VS时选择了报表插件,问题就简单多了,就可以尝试一下下面的方法。内容第一步:首先,打开VS菜单栏中的工具,点击“选择工具箱项”第二步:在选择工具箱项中选择“浏览”,在VS的安装路径下搜索"Microsoft.ReportViewer.WinForm.dll",搜索结果如下:...原创 2018-09-15 16:45:20 · 4659 阅读 · 23 评论 -
【重构】C#——上下机
前言记得第一次做机房收费系统的时候,做上下机这块思路就不是很清楚,马马虎虎就过去了,果不其然,欠下的迟早是要还的,不过这个过程是我做机房收获最多的。做机房重要的还是思路,思路捋清了,代码按照思路一步一步实现功能就简单多了,在上下机这个过程中深有体会,接下来分享一下我的思路。内容上机模块1、判断输入卡号是否为空2、判断卡号是否注册(student表)3、判断卡号是否正在上...原创 2018-09-09 21:27:10 · 460 阅读 · 18 评论 -
C#——File
1、创建文件 File.Create(path); 用来在指定路径下创建一个文件,如果文件存在,则覆盖该文件。 string path = @"E:\计算机学习材料\C#学习资料\books.txt"; File.Create(path); Console.WriteLine("hello,world!"); ...原创 2018-05-05 09:29:07 · 859 阅读 · 17 评论 -
C#之面向对象三大要素
一、面向对象1、什么是面向对象?面向对象是一种思想,面向对象是将功能等通过对象来实现,将功能封装进对象之中,让对象去实现具体的细节,在面向对象中,将数据作为第一位,而方法或者说是算法作为其次,这是对数据的一种优化,操作起来更加方便,简化了过程。2、为什么要用面向对象?无论是在C#还是在VB中,都反复提及到了面向对象,那么为什么要使用面向对象呢?也就是说面向对象有哪些好处呢?面向对象提高了程序的可复...原创 2018-04-29 21:24:50 · 2091 阅读 · 89 评论 -
C#实例练习总结
实例1、交换俩个数的值方法一、using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace A{ class Program { static void Main(string[] args) { ...原创 2018-03-20 21:06:44 · 541 阅读 · 35 评论 -
C#初识
前言开始了一段时间的C#,针对C#聊聊初步认识,点滴的知识需要我们积累起来哦~主要内容C#和.net之间的关系.NET开发各类应用的框架和程序运行库。.NET一般指.NET Framework框架,一种平台,一种技术。C#C#是基于.NET 框架的编程语言之一,可以开发基于.NET平台的应用。(PS: Java既是一种技术又是一种编程语言).NET功能开发桌面应用程序 winformInterne...原创 2018-03-17 10:11:52 · 383 阅读 · 20 评论