前段時間我們使用VB做了學生管理系統和機房收費系統,都是串連資料庫的,大多數操作幾乎都是對資料庫中表的操作。其中存在一個問題就是:有很多表單都是類似的,表單中的控制項都幾乎是一樣的,當對資料庫中的表添加記錄或者是修改的時候都需要對表單中文字框中的字串是否為空白進行判斷。如果在每個表單中都這樣判斷,重複的東西非常的多,無疑會造成軟體的內聚性不夠強。
下面我是把這些判斷的代碼放到了一個模組中的公有函數中進行判斷,再在表單的代碼中進行函數的調用來判斷。具體代碼僅供參考:
模組中的代碼:
Public Sub IsEmpty(pForm As Form) '模組中定義公有過程判斷表單中的文字框有否有為空白的 Dim a As Control For Each a In pForm.Controls '對表單中的控制項逐個遍曆 If a.Name = "txtSno" Then '判斷控制項的名稱,根據名稱進行操作 If a.Text = "" Then MsgBox "學號不可為空", vbOKOnly, "錯誤" End If ElseIf a.Name = "txtName" Then If a.Text = "" Then MsgBox "姓名不可為空", vbOKOnly, "錯誤" End If ElseIf a.Name = "txtSex" Then If a.Text = "" Then MsgBox "性別不可為空", vbOKOnly, "錯誤" End If ElseIf a.Name = "txtSchool" Then If a.Text = "" Then MsgBox "學校不可為空", vbOKOnly, "錯誤" End If End If NextEnd Sub
表單介面:
Private Sub cmdCheck_Click() Call IsEmpty(Me) '調用模組中定義的公有過程End Sub
代碼雖少,但是對其他的表單會有很大的作用,方便很多