首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

学生信息管理系统之有关问题汇总

2012-09-08 
学生信息管理系统之问题汇总学生信息管理系统完工已经有一段时间了,但是问题却像小草一样,野火烧不尽,春风

学生信息管理系统之问题汇总

    学生信息管理系统完工已经有一段时间了,但是问题却像小草一样,野火烧不尽,春风吹又生。下面我们一起来看看几个常见的问题,这些问题你是否也曾遇到过。

 

1,对于文本框的内容是否设置了字符长度

  由于数据库中的内容有长度限制,那么当我们在文本框中不做任何操作时,会出现这样的提示

     学生信息管理系统之有关问题汇总

2,没有查询结果时,是否注意了要弹出提示

   在做学生信息管理系统时,查询信息你是否注意到了呢?如果你是用户,当你查询结果时,它时时不出来,是没有信息呢,还是仍在加载?所谓全心全意为人民服务就是要我们设身处地的为用户着想。

 

3,选择列表框:需要选择的内容是否还可以输入

   对于下拉列表框的使用,不是我们不会,只是我们没有去思考,理所当然的认为只要功能实现,我们就大功告成了,如果是这样我们就大错特错了,不是都说细节决定成败,当然现在还不至于那么严重,只是会告诉你不合格,继续改而已,但是任何习惯的养成都是我们日常点滴的积累,如果平时都不去注意,那么你想如何成为一名优秀的程序员呢?

    当然在设置过程中,还出现了一段小插曲,我们知道,列表框的Style属性是设计时属性,那么如果我们将它改成只读的,那么当修改时,需要从数据库读出数据显示的时候就会提示我们错误

     学生信息管理系统之有关问题汇总

    对于这个问题,我们也想到了一个好玩的方法解决,来看一下这段代码,嘿嘿!

Private Sub ComGra_KeyPress(KeyAscii As Integer)    KeyAscii = 0          '不允许用户输入End Sub

 

4,当表中没有任何记录

    我们先来看看它的错误提示

     学生信息管理系统之有关问题汇总

   对于这个问题,一种方法我们可以添加错误处理,另一种方法即在显示窗体前加如下代码

 

Private Sub modifycoursemenu_Click()    Dim txtsql As String    Dim msgtext As String    Dim mrc As ADODB.Recordset           txtsql = "select * from course_info "       Set mrc = executesql(txtsql, msgtext)       If mrc.EOF And mrc.BOF Then          MsgBox "数据为空,请先添加数据", vbOKOnly + vbExclamation, "警告"        Exit Sub       Else         frmmodifycourseinfo.Show       End If     End Sub


5,多次点击修改更新时,是否出错

   我们先来看一下出现这个问题的原因,错误代码

Dim txtsql As String Dim msgtext As String Dim mrcc As ADODB.Recordset       mrc.Delete      '删除以前的那个表,然后重新输入,更新                txtsql = "select *from class_info where class_no= ' " & Trim(TxtNum.Text) & " '"        Set mrcc = executesql(txtsql, msgtext)        If mrcc.EOF = False Then             'mrcc的作用主要是查找注册表里是否还存在着重新输入的内容          MsgBox "输入班号重复,请重新输入", vbOKOnly + vbExclamation, "警告"          TxtNum.SetFocus          mrcc.Close        Else           mrcc.Close   '不存在的话,就将输入的内容添加到mrc中           mrc.AddNew           mrc.Fields(0) = Trim(TxtNum.Text)           mrc.Fields(1) = Trim(ComGra.Text)           mrc.Fields(2) = Trim(TxtTec.Text)           mrc.Fields(3) = Trim(TxtGra.Text)           mrc.Update           MsgBox "修改班级信息成功", vbOKOnly + vbExclamation, "警告"             Call ViewData                      Frame2.Enabled = True           TxtNum.Enabled = False           ComGra.Enabled = False           TxtTec.Enabled = False           TxtGra.Enabled = False                       Frame1.Enabled = True           CmdFir.Enabled = True           CmdPre.Enabled = True           CmdNext.Enabled = True           CmdLast.Enabled = True           mcclean = True        End If                End Sub

 

   在这个过程中,聪明的你不难发现,如果当输入的班号相同时,它就会重复删除两次,提示错误     

 学生信息管理系统之有关问题汇总

错误改正,代码如下:

Dim txtsql As String Dim msgtext As String Dim mrcc As ADODB.Recordset Dim update As Boolean If update = False Then  '还未进行过删除         mrc.Delete      '删除以前的那个表,然后重新输入,更新         update = True     '已经删除了一次          End If                   txtsql = "select *from class_info where class_no= ' " & Trim(TxtNum.text) & " '"     Set mrcc = executesql(txtsql, msgtext)     If mrcc.EOF = False    Then                                              'mrcc主要是查找注册表里是否还存在着重新输入的内容       MsgBox "输入班号重复,请重新输入", vbOKOnly + vbExclamation, "警告"       TxtNum.SetFocus                  mrcc.Close     Else           mrcc.Close   '不存在的话,就将输入的内容添加到mrc中           mrc.AddNew           mrc.Fields(0) = Trim(TxtNum.text)           mrc.Fields(1) = Trim(ComGra.text)           mrc.Fields(2) = Trim(TxtTec.text)           mrc.Fields(3) = Trim(TxtGra.text)           mrc.update           mrc.MoveLast           MsgBox "修改班级信息成功", vbOKOnly + vbExclamation, "警告"           update = False         '写回没有删除的状态                       Call ViewData                      Frame2.Enabled = True           TxtNum.Enabled = False           ComGra.Enabled = False           TxtTec.Enabled = False           TxtGra.Enabled = False                       Frame1.Enabled = True           CmdFir.Enabled = True           CmdPre.Enabled = True           CmdNext.Enabled = True           CmdLast.Enabled = True           mcclean = True     End If               End Sub  

   当然在窗体加载时将update=false,即加载时未进行过删除

   以上这些问题都是我们在做系统时,最容易忽视的,也是最常见的,想要作为优秀设计人员,我们要学的不仅仅是一些算法,更不要为了做程序而做程序,在这个过程中,我们要不断的学习和总结,像这样的错误在设计初期就应该避免。

   出现这些问题,也告诉我们以后做任何事情都需要有前瞻性,不仅仅是设计软件,在学习和生活中,做事情之前,想一想这件事情会出现什么错误,什么困难,提前避免和处理,让自己的效率得到提高。

 

  

9楼liushuijinger2小时前
不断积累
Re: hejingyuan62小时前
回复liushuijingern恩
8楼lfmilaoshi3小时前
遇到的 问题越多,收获越多。。。米老师
Re: hejingyuan63小时前
回复lfmilaoshin恩
7楼aboy1233小时前
有错误才会有动力去解决
Re: hejingyuan63小时前
回复aboy123n恩
6楼xvshu4小时前
加油
Re: hejingyuan64小时前
回复xvshun呵呵
5楼han_yankun20094小时前
j精髓
Re: hejingyuan64小时前
回复han_yankun2009n呵呵
4楼shuihuojiao5小时前
基础
Re: hejingyuan64小时前
回复shuihuojiaon恩
3楼liujiahan6296295小时前
猛!
Re: hejingyuan65小时前
回复liujiahan629629n呵呵
2楼linlin802306196小时前
发现问题、解决问题的无缝连接~
Re: hejingyuan66小时前
回复linlin80230619n嘿嘿
1楼lishehe6小时前
加油
Re: hejingyuan66小时前
回复lishehen加油

热点排行