1樓:匿名使用者
coo_boi 和 tianqing20wen 兩位的回答都是可以的,我估計coo_boi是搞**或者遊戲的 tianqing20wen 則是搞商業軟體的(胡亂猜測)
其實lz的問題很簡單,沒必要用到正規表示式,我給出其他幾個方法
1.isnumeric 比如if isnumeric(text1.text) then 這個不多說了
2.通常文字框輸入資料都要是用,那麼就直接操作,如:
dim v as long'dim v as double/variant
v = clng(text1.text)'v = val(text1.text)
if v <= 0 then
msgbox "請正確輸入"
text1.setfocus
end if
3.ascii 判斷
0-9 的ascii 的16進製制編碼是 &h30 到 &h39 其他語言常寫作:0x30 0x39
4.錯誤捕捉,直接操作
dim c as double
on error goto 標號
c = text1.text 』vb能自動強制轉換變數
'...
exit sub/function
標號:msgbox "出錯了":err.cls
end sub/function
2樓:二級程式設計師
例如,你的文字框名稱為text1,直接複製我的**。
private sub text1_keypress(keyascii as integer)
'限制文字框的輸入,只能輸入數字及小數點,且只能輸入乙個小數點,輸入其它字元無效。
if (keyascii < 48 or keyascii > 57) and keyascii <> 46 and keyascii <> 8 then keyascii = 0
if instr(text1.text, ".") and keyascii = 46 then keyascii = 0
end sub
3樓:
使用正規表示式解決,需要引用microsoft vbscript regular exprsession 5.5
private sub command1_click()dim rexp as new regexprexp.pattern = "^\d+$|^\d+\.\d+$"
dim var
for each var in split(trim(text1), ",")
if not (rexp.test(var)) then msgbox var, vbinformation, "非法數字"
next
end sub
4樓:匿名使用者
isnumeric 函式即可判斷是否是數字
mfc如何從文字框中獲取數字?
5樓:餜挵澶氭潀
給這個文字框在嚮導裡關聯乙個cstring型別的變數,如m_str;
m_str中存放的就是該文字框中的內容,但用之前要加乙個updatedata(true)。
cstring str;
((cedit *)getdlgitem(idc_edit1))->getwindowtext(str)得messagebox(str);////idc_edit1是編輯框的id,右擊編輯框,選擇屬性就可以看見了。
你可以給edit控制項新增變數,再用updatedata(true)函式更新變數就行了。
先從編輯框中獲取字串、然後將字元中轉成數字,最後完成將數字存入 time 變數的過程。
對該edit新增乙個cedit變數,比如m_edtputin。
在需要得到變數的地方使用cstring str。
m_edtputin.getwindowtext(str)。
str就是edit中的字串。
使用 atoi。
vb判斷是否為數字
6樓:dl_會飛的青蛙
if isnumeric(a)=false thenmsgbox "該數不為數字", , "友情提示"
end if
忘記什麼樣的叫整數了!~
沒有小數點的都叫整數嗎?
如果可以拿小數點判斷就用instr(a,",")>0 就是有小數點
7樓:興
isnumeric 函式示例
本示例使用 isnumeric 函式判斷變數的值是否可為數值。
dim myvar, mycheck
myvar = "53" ' 指定值。
mycheck = isnumeric(myvar) ' 返回 true。
myvar = "459.95" ' 指定值。
mycheck = isnumeric(myvar) ' 返回 true。
myvar = "45 help" ' 指定值。
mycheck = isnumeric(myvar) ' 返回 false。
8樓:
這個題問的不完全。首先應做這樣的宣告,若a是數字,那麼它必是乙個一位數(即只能取0-9),否則你的這個題沒法解。
若a的ascii值不在48-57間,則認為不是數字if (asc(a) < 48 or asc(a)>57) thenmsgbox "該數不為數字", , "友情提示"
end if
若判斷a是否為數字:
dim a as object
a = 1
if (abs(fix(a)) < abs(a)) thenmsgbox(str(a) & "不是整數")else
msgbox(str(a) & "是整數")end if
注意的是:在使用絕對值函式abs前,要在類的前面加上這一句:
imports system.math
9樓:
if (a 不為數字) then
應該為if not isnumeric(a) then或if isnumeric(a) = false then判斷a是否為整數
if int(a) <> a then
msgbox str(a) & "不是整數"
else
msgbox str(a) & "是整數"
end if
vb中如何判斷文字框中是否有小數點
10樓:匿名使用者
文字框的內容就是乙個字串,所以問題就是判斷字串是否有小數點,對於純數字的判斷比較簡單:
if instr(1,text1.text,".") then
11樓:
文字框是乙個字串,取的其長度,放入for。。next迴圈中,利用mid(text1,i,1)遍歷字串的每個字元,跟小數點判斷是否一致
我想知道,怎麼用vb編寫判斷,文字框中所輸入的是不是數字,如果不是數字的話怎麼終止接下來的步驟。
vb文字框怎樣限制只能輸入數字值
12樓:匿名使用者
1、 新建乙個標準exe程式。
2、 繪製介面,新增乙個 textbox 控制項,改名為 txbnumber。
3、 編寫**。在**視窗中,新增 txbnumber_keypress 事件。
4、查ascii碼表,得到0的ascii碼是48。輸入以下語句:
if keyascii < 48 or keyascii > 57 then keyascii = 0
這條語句用來判斷輸入的字元是否在0-9的範圍,如果不在這個範圍,就把這個輸入的字元遮蔽掉。
5、但這麼做會產生乙個問題,就是使用backspace刪除字元的時候,由於按鍵被遮蔽,無法刪除。只要在上面的語句前在新增一條語句:if keyascii = 8 then exit sub,意思是,如果按了backspace,就直接退出該過程,按鍵就不會被遮蔽了。
6、除錯執行。按f5,在文字框中輸入任意字元,可以看到只有數字能顯示在文字框中。按退格鍵,字元也能正常刪除。
7、 如果輸入的數字可能是小數,那麼還要新增如下**:
if keyascii = 46 and not cbool(instr(txbnumber, ".")) then exit sub
當輸入小數點時,程式判斷文字框中是否已有小數點(因為乙個小數中不可能有多個小數點),如果沒有小數點,則允許輸入。
13樓:丁滿
(二樓那個不能輸入小數點和科學計算,還有其他進製,我重新編了乙個,要事先把文字框的tag屬性設為"0")
private sub text1_change()
if isnumeric(text1.text) then
text1.tag = text1.text
end if
end sub
private sub text1_lostfocus()
if text1.text = "" then text1.text = "0": exit sub
if not isnumeric(text1.text) then
if msgbox("只能輸入數字!單擊「是」重新編輯。", vbyesno) = vbyes then
text1.setfocus
else
text1.text = val(text1.tag)
end if
end if
end sub
如需特殊的數字要求(比如只能輸入整數,不能為0等,請繼續追問,很願意為你解答
14樓:匿名使用者
新增以下事件即可。
private sub text1_keypress(keyascii as integer)
if keyascii < 48 or keyascii > 57 then keyascii = 0
end sub
15樓:
用numericupdown
或者maskedtextbox設定mask = 9999.99
vb中,怎麼判定乙個textbox中輸入的是正整數
16樓:匿名使用者
1、開啟vb6.0軟體,新建乙個標準exe工程;
2、在設計介面上新增乙個text控制項和乙個command控制項,text1的屬性text設定為空,command1的caption屬性設定為"判斷";
3、雙擊command1控制項,進入**編輯視窗,在**編輯視窗輸入如下**:
private sub command1_click()dim n as double
n = val(text1.text)
if n > 0 then
msgbox (n & "是乙個正數")
elseif n = 0 then
msgbox ("n等於0")
else
msgbox (n & "是乙個負數")
end if
end sub
4、點選執行工程,在text1中輸入乙個數字,單擊判斷按鈕,判斷該數是正數、0還是負數;
統計VB窗體裡特定文字框的個數,VB下統計字串中所含某字元的個數
visual basic 6.0具有豐富的資料型別和眾多的內部函式。其採用模組化和結構化程式設計語言,結構清晰,語法簡單,容易學習。其中統計vb窗體裡特定文字框的個數的方法為 1 首先,我們繪製乙個命令按鈕,並雙擊進入。2 然後我們輸入要顯示的窗體。3 然後輸入 show 方法。4 接下來我們就可以...
vb如何將print的內容改到文字框tet1中顯示
text1 共有以上 l 組。vb練習 現了問題 怎麼做才能將內容用print語句輸出到textbox中 private sub command1 click print 無法在文字框中輸出,下面方法可以實現在文字框中輸出 dim x as integer x 401 if x mod 4 0 an...
MFC文字框如何限制輸入1位數字
可以在oninitdialog 中新增如下 cedit pedt cedit getdlgitem idc edit1 pedt setlimittext 1 把輸入轉換成整數後 if i 0 i 10 如何寫 在mfc編輯框中限定數字輸入的範圍,比如1 100,而且當輸入超出範圍時,自動歸回到初始...