学生信息管理系统优化问题汇总
生活随笔
收集整理的這篇文章主要介紹了
学生信息管理系统优化问题汇总
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
做學生信息管理系統已經很長時間了,在這幾天一直在整理師傅給指出的待優化問題,當然還有幾個沒有優化完,把已經解決了的整理出來分享一下:
1、文本框輸入字符長度的限制。在添加內容時,我們不能無限制的輸入下去,這就涉及到輸入字符的長度限制,說兩種方法吧:(1)也是最直接方便的方法:將控件的MaxLength屬性值改為你所想要限定的長度就OK了;(2)因為考慮到當超過字符限制時用戶無法得知什么問題導致不能繼續輸入,本著全心全意為人民服務的原則,我特意添加了提醒窗口,代碼如下:
'限制字符串的輸入長度If Len(txtname.Text) > 20 ThenMsgBox "字符長度過長!", vbOKOnly + vbCritical, "提示"txtname.Text = ""txtname.SetFocusExit SubEnd If將以上代碼編寫到單擊事件中,就可以輕松提醒用戶了;
2、文本框輸入的字符格式限制。相信我們都可以理解這個問題,比如,在學號的輸入框中,我們不能輸入成文字或字母,只能是有數字組成,對于這個問題,我也添加了代碼來限制輸入字符的格式。我們需要先在通用中聲明一個變量:
Const xstr As String = "0123456789" '先聲明一個變量,把想禁用或允許的輸入的內容賦值給他然后在控件單擊事件中編寫如下代碼:
'限制文本框輸入內容的字符格式,只能輸入數字以外的字符KeyAscii = IIf(InStr(xstr, Chr(KeyAscii)), 0, KeyAscii)
這個是使其輸入非數字的字符,另外還有只允許輸入數字時:
'只能輸入數字KeyAscii = IIf(InStr(xstr & Chr(8), Chr(KeyAscii)), KeyAscii, 0) 這樣我的輸入格式問題就解決了。
3、添加學籍時,入校日期不能早于出生日期。這個問題確實挺搞笑的,還沒有出生怎么可能已經入學,給的源碼中也沒有這方面的限定,我們當然不能出這種滑稽的問題,在兩者時間出現早晚問題時,我們同樣可以添加提示框,提醒用戶輸入的錯誤。從同學那里借鑒了一些內容解決的,添加如下代碼:
Private Sub txtRudate_Change()Dim a As Boolean'判斷入學日期是否大于出生日期a = TrueIf IsDate(txtRudate.Text) And IsDate(txtBorndate.Text) ThenIf CDate(txtRudate.Text) < CDate(txtBorndate.Text) Then '比較日期大小a = FalseEnd IfEnd IfIf a = False Then '如果入學日期小于出生日期,提示!MsgBox "入學日期不能小于出生日期!", vbOKOnly + vbExclamation, "警告"Exit SubEnd If End Sub 4、 在查詢信息是,去掉單選框的對勾,使其后文本框中的內容同時消失。這一點在平時使用的軟件中都會有,開始自己也注意到了這個問題,看了看也沒當回事。但驗收時師傅提出來了,就算只是一個小系統,也應該為用戶著想,做到使用最優化。其實問題還是很好解決的,當初就因為自己犯了個懶,給系統添加了不足。代碼極其簡單,正如以下所示:
Private Sub Check1_Click(Index As Integer)'在去掉按鈕前對勾時,其后的文本框隨之清空If Check1(0).Value = False ThentxtSID.Text = " "End IfIf Check1(1).Value = False ThentxtName.Text = " "End IfIf Check1(2).Value = False ThentxtCourse.Text = " "End If End Sub 5、 將combo控件設置為只可選下拉框內容,不可隨意添加。這一點是很重要的,舉個例子來說,在添加成績信息時是需要填寫班級的, 如果我們可以隨意添加的話,就算你所寫的班號在數據庫中并沒有,但信息仍可以成功添加,這種關系是不成立的,當然我們要添加成績,這個班級在數據庫中就必須要存在。對于這個問題,我們只要將combo控件的style屬性設置為2就可以了,由于style為2時,combo為只讀屬性,其內容不可隨意更改,我們還需要將窗體中的combo.text=""一類的語句刪除掉。
6、課程可以重復添加的問題。在設置課程窗體中,如果我們重復添加課程,同樣也可以添加成功,這種現象絕不可以發生。參考了多位同學的總結,算是把這個問題解決的不錯。代碼如下:
Private Sub cmdAdd_Click()Dim selectcourse As IntegerDim i As Integer '定義兩個整型變量Dim j As IntegerFor selectcourse = 0 To listAllcourse.ListCount - 1If listAllcourse.Selected(selectcourse) = True ThenlistSelectcourse.AddItem listAllcourse.List(listAllcourse.ListIndex)'向listselectcourse列表中添加課程For i = 0 To listSelectcourse.ListCount - 1For j = i + 1 To listSelectcourse.ListCount'判斷 在list列表中是否有相同的名稱If listSelectcourse.List(i) = listSelectcourse.List(j) ThenlistSelectcourse.RemoveItem jMsgBox "已添加此課程!", vbOKOnly, "提示"Exit SubEnd IfNext jNext iEnd IfNext selectcourse End Sub 大概內容就這些吧,當然還有很多,希望能幫到同學們的優化。也讓我們的系統真正的接近全心全意為人民服務。
總結
以上是生活随笔為你收集整理的学生信息管理系统优化问题汇总的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: cad自动填写页码lisp_CAD图纸页
- 下一篇: 【学生信息管理系统】-优化篇1