【学生信息管理系统】——优化篇(一)
優化內容
首先,從整個系統上來說,幾乎每個窗體都需要重復做一些簡單的優化工作,比如說添加用戶使用的界面背景、調整用戶使用窗體的大小、子窗體位于主窗體上的相對位置、子窗體是否可移出主窗體、調整界面字體字號、用戶輸入所使用的文本框字符類型的限制、文本框字符長度的限制、按鈕鍵盤功能的設置、Tab鍵控制文本框的順序、控件名稱的一致性等內容,通過簡單的代碼或者對象的屬性設置,來滿足用戶使用的基本需求。
其次,對于系統里面某一塊功能的優化。以用戶實際使用情況為基礎,以滿足用戶的實際需求為導向,通過嚴謹的邏輯推理、結構分析,使用相應的代碼片段實現相應的功能。
1、登錄窗體
A、登錄界面——系統的首界面只能是登錄界面,即在系統開始運行的時候將登錄窗體設置成模式窗體,模式窗體時在一個界面只能存在著一個窗體,如果想加載別的窗體則應先下載這個窗體,就像我們登錄的釘釘界面,在未成功登錄釘釘之前是進入不了釘釘主界面的。這個功能是由模塊中的sub main函數來實現的:
B、判斷用戶名——判斷用戶名有兩層判斷,一是判斷用戶名是否為空,一是判斷用戶名是否存在數據庫中。這里就用到了if函數的嵌套。
判斷是否為空: If Trim(txtUserName.Text = "") Then '1、如果用戶名為空,則彈出提示框MsgBox "用戶名不能為空,請您重新輸入用戶名!", vbOKOnly + vbExclamation, "警告"txtUserName.SetFocus '用戶名文本框獲得焦點Else '2、如果用戶名不為空txtSQL = "select * from user_info where user_ID= '" & txtUserName.Text & "'" '查詢指定用戶名的記錄Set mrc = ExecuteSQL(txtSQL, MsgText) '執行查詢語句'判斷指定用戶表里是否有所輸入的用戶信息If mrc.EOF = True Then '如果記錄集搜索到了最后一條信息,沒有找到該用戶信息,則彈出提示框MsgBox "沒有這個用戶,請重新輸入用戶名!", vbOKOnly + vbExclamation, "警告"txtUserName.Text = "" '將所輸入的用戶名清空txtPassword.Text = "" '將所輸入的密碼清空txtUserName.SetFocus '用戶名文本框獲得焦點Else '若有該用戶信息,則進行判斷密碼是否正確一步C、判斷密碼是否正確
'判斷輸入密碼是否正確If Trim(mrc.Fields(1)) = Trim(txtPassword.Text) Then '將所輸入的密碼和數據庫中記錄信息進行對比'若密碼正確OK = Truemrc.Close '記錄集關閉Me.Hide '登錄窗體隱藏UserName = Trim(txtUserName.Text)FrmMain.Show 'FrmMain窗體顯示出來Else'否則,密碼不正確MsgBox "輸入密碼不正確,請重新輸入!", vbOKOnly + vbExclamation, "警告" '彈出提示信息txtPassword.Text = "" '密碼文本框清空txtPassword.SetFocus '密碼文本框獲得焦點End IfD、保護用戶信息安全性——限制登錄次數
為保障系統用戶的安全性,需要限制登陸次數,用戶不能無限的登錄系統,這個實現的方式是定義一個變量來記錄登錄次數:
注意:在加載登錄窗體時,需要將記錄輸入密碼次數的變量設置初始值:miCount = 0 '輸入密碼次數初始值為0
2、修改密碼窗體
從安全性的角度來看,源代碼中給出的修改密碼步驟是不嚴謹的,用戶的信息安全沒有得到很好地保證,所以,我在源代碼實現修改密碼的功能基礎之上,又添加了一步原密碼的驗證,并且成功修改密碼后,用戶需返回到系統登錄界面重新登錄系統。
填寫完密碼單擊確定按鈕后,首先判斷原密碼輸入框與用戶在登錄窗體輸入的密碼是否一致,此時會有兩種情況,一是兩者不一致,二是兩者一致。當第一種情況出現時彈出提示框提示用戶;當第二種情況出現,再判斷新設置的密碼和原密碼是否相同,這時又會有兩種情況,一是新密碼與原密碼相同,彈出提示框提示用戶,二是新密碼與原密碼不同,當這種情況出現時,最后再判斷兩次新密碼輸入是否相同。實現這個功能的代碼如下:
總結
以上是生活随笔為你收集整理的【学生信息管理系统】——优化篇(一)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【学生信息管理系统】——问题篇
- 下一篇: 【学生信息管理系统】——优化篇(二)