学生信息管理系统总结二

【序言】学生管理的第二篇总结,接着上一篇,尽可能的优化系统,将最大的便利给予用户

===============================================================================

【问题3】怎样防止当删除完所有记录时EOF与BOF报错?


这时已经是记录集中剩余的最后一条记录了,



当我们删除完了之后,我们可以给予提示,这样就避免了记录集中没有记录时,继续删除而报错了,




或者添加异常处理:
<pre name="code" class="vb">On Error GoTo d_Err

d_Err:
            txtSID.Text = ""
            txtName.Text = "'"
            txtRudate.Text = ""
            txtBorndate.Text = ""
            txtComment.Text = ""
            txtTel.Text = ""
            txtAddress.Text = ""
            comboSex.Text = ""
            comboClassNo.Text = ""
            
             MsgBox "所有记录都被删除,记录集为空!",vbOKOnly + vbExclamation,"警告"
             Unload Me


 
 

【问题4】查询界面的固定行如何更改?

运行时查询界面是这样的:
很奇怪第一行上面为什么多了一行空行,经过考究,其实这是系统认的属性值和我们编写代码的原因。 先把MSHFlexGrid控件属性的固定行值改为0,然后进行代码的更正
<pre name="code" class="vb"><pre name="code" class="vb">
 
 
With myflexgrid                                        '列表标题

        .Rows = 1

        .CellAlignment = 4

        .TextMatrix(0,0) = "考试编号"

        .TextMatrix(0,1) = "学号"

        .TextMatrix(0,2) = "姓名"

        .TextMatrix(0,3) = "班号"

        .TextMatrix(0,4) = "课程名称"

        .TextMatrix(0,5) = "分数"

      End With

      '如果没有查询的信息,提示

        If mrc.EOF Then

            MsgBox "没有你想要的信息"

        End If

       

        do while Not mrc.EOF

            With myflexgrid

            .Rows = .Rows + 1

            .CellAlignment = 4

            .TextMatrix(.Rows - 1,0) = mrc.Fields(0)

            .TextMatrix(.Rows - 1,1) = mrc.Fields(1)

            .TextMatrix(.Rows - 1,2) = mrc.Fields(2)

            .TextMatrix(.Rows - 1,3) = mrc.Fields(3)

            .TextMatrix(.Rows - 1,4) = mrc.Fields(4)

            .TextMatrix(.Rows - 1,5) = mrc.Fields(5)

            mrc.MoveNext

             End With

        Loop


 
 
 

【总结】

有些错误当系统给予明确提示时,用户便会避免相应的操作,也就避免了一些bug的产生,所以关于异常处理和系统信息提示这方面一定要做好明确的提示,也就避免了很多问题的产生。存在即有合理性,界面上的每一点变化肯定是由相关的属性设置或者是代码编写引起的,只要耐性查找,肯定或找到问题的原因所在。

感谢您的阅读,未完待续~~

相关文章

Format[$] ( expr [ , fmt ] ) format 返回变体型 format$ 强...
VB6或者ASP 格式化时间为 MM/dd/yyyy 格式,竟然没有好的办...
在项目中添加如下代码:新建窗口来显示异常信息。 Namespace...
转了这一篇文章,原来一直想用C#做k3的插件开发,vb没有C#用...
Sub 分列() ‘以空格为分隔符,连续空格只算1个。对所选...
  窗体代码 1 Private Sub Text1_OLEDragDrop(Data As Dat...