VB限制窗體內所有文字框為空

2021-05-27 02:14:50 字數 1422 閱讀 9857

做系統的時候經常遇到限制窗體中文字框為空的情況,如果逐個判斷**寫起來會很慢,想了個比較簡單的方法,從窗體控制項的角度出發。

**如下:

private sub cmdok_click()

dim s as control

dim frm as form

for each s in frm

if typeof s is textbox then

msgbox "輸入不能為空"

exit sub

end if

next

end sub

如果窗體中有乙個文字框允許空,就不行了,所以還得進一步思考一下。

跟德鵬商量後得出下面這個**:

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 = "txt***" then

if a.text = "" then

msgbox "性別不能為空", vbokonly, "錯誤"

end if

elseif a.name = "txtschool" then

if a.text = "" then

msgbox "學校不能為空", vbokonly, "錯誤"

end if

end if

next

end sub

然後再在窗體中呼叫

private sub cmdok_click()

call isempty(me) '呼叫模組中定義的公有過程

end sub

如果在不同的窗體中,增加了新的文字框,那麼只需在模組兒定義的過程中新增判斷即可。這種方法,顯得有點笨,但是也可以解決問題。

理想中的函式具有這樣的功能。模組兒中的函式包含兩個引數,乙個是文字框控制項陣列,另乙個是窗體控制項。第乙個引數接收所在窗體中,要判斷的文字框,第二個引數傳遞具體窗體。但是在實現選擇性的文字框判斷的時候,就遇到麻煩了。現在還沒有解決,先保留思路。

……

判斷文字框是否為空

在窗體上往往有很多文字框需要輸入資訊,一些下拉框需要選擇,對於這些資訊的輸入,我們總是需要判斷輸入的是否為空,以前,總是乙個乙個的判斷,這樣太繁瑣,也可能會丟掉其中的乙個兩個的。現在就讓我們輕鬆解決判斷文字框是否為空吧。用來判斷文字框和下拉框是否為空 module module1 public fu...

推斷文字框是否為空

在視窗上往往有非常多文字框須要輸入資訊,一些下拉框須要選擇,對於這些資訊的輸入,我們總是須要推斷輸入的是否為空。曾經,總是乙個乙個的推斷。這樣太繁瑣。也可能會丟掉當中的乙個兩個的。如今就讓我們輕鬆解決推斷文字框是否為空吧。用來推斷文字框和下拉框是否為空 module module1 public f...

封裝重複工作 判斷文字框是否為空

重複歸一,怎麼來解釋這個詞呢!在寫這篇部落格的時候,腦子中就突然蹦出了這樣的乙個詞彙。這個詞不知道字典中有沒有,但是我的理解就是將重複的事情化為一件事情來做。記得建新 去年給我驗收系統的時候,我的電腦上總是蹦出一些沒用的窗體,每次開機都要點一遍。然後 說 不要每次都做重複的事情,做了超過兩次,就要想...