VB中,怎么判定一个Textbox中输入的是正整数

..应该怎么写

只可以是正整数,,不是或者没输入留空都弹出提示...
弹出提示后点击确定后停止程序,,可以修改原来输入的东东..

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还是负数;

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2018-03-23
Private Function JudgeUnsignInteger(strNum As String) As Boolean
JudgeUnsignInteger = False
On Error GoTo check1
Dim A As Double
Dim B As Integer

A = CDbl(strNum)
B = CInt(strNum)
If Len(CStr(A)) = Len(CStr(B)) Then
If B > 0 Then
JudgeUnsignInteger = True
End If
End If
check1:
End Function
这个是判断函数,是正数返回TRUE,不是返回FALSE
这个判断对形如22.00也判断为正确,不知这个算不算正数,如不算,改成如下形式.
Private Function JudgeUnsignInteger(strNum As String) As Boolean
JudgeUnsignInteger = False
On Error GoTo check1
Dim A As Double
Dim B As Integer

A = CDbl(strNum)
if len(cstr(A)) <> len(text1.text) then
exit function
end if
B = CInt(strNum)
If Len(CStr(A)) = Len(CStr(B)) Then
If B > 0 Then
JudgeUnsignInteger = True
End If
End If
check1:
End Function本回答被提问者和网友采纳
第2个回答  2007-07-13
先用IsNumeric判断是否为数。
再转化为int型,然后判断是否大于0

VB中,怎么判定一个Textbox中输入的是正整数
1、打开VB6.0软件,新建一个标准exe工程;2、在设计界面上添加一个Text控件和一个Command控件,Text1的属性Text设置为空,Command1的Caption属性设置为"判断";3、双击Command1控件,进入代码编辑窗口,在代码编辑窗口输入如下代码:Private Sub Command1_Click()Dim n As Doublen = Val(Text1.Text)If...

在vb中的文本框里输入一个数,按下按钮后,如何判断它是否是整数
Private Sub Command1_Click()Dim X As String Dim P As String Dim i, k As Integer '以上三行为定义那啥 X = Text1.Text '取文本框内的字符 k = Len(X) '取文本框内的字符长度 并传给k For i = 1 To k '循环体,从第一个字符开始找,一直找到K(字符串的长度,最后一个字符...

VB怎么控制textbox 只能输入正整数???
MsgBox "请输入一个正整数。", vbCritical, "错误"Cancel = True KeyAscii=0 end if End Sub 你那错误有几个,1.Text1_Validate函数是获得当前焦点,在你输入后当前焦点变为下一个,即空格,所以你会出错 2.IsNumeric(Text1)应该为IsNumeric(Text1.text)这样才能获得text1的值,...

VB编程_如何判断Textbox输入的是数字还是非数字?
Private Sub Text1_KeyPress(KeyAscii As Integer)If KeyAscii >= 48 And KeyAscii <= 57 Then MsgBox "输入的是数字"Else MsgBox "输入的是非数字"End If End Sub

VB 怎样保证输入值为整数
'text1是输入文本框 'text2是输入显示框 Private Sub Text1_Change()On Error GoTo exitsub Dim num As Double Dim num2 As Integer num = CDbl(Text1.Text) '将text1的值转换成double类型 num2 = CInt(Text1.Text)'将text1的值转换成integer类型 If num <> num2 Then Text2.Text = "...

编写判断一个输入数是为正数,负数还是0的程序
'这个很简单啊,大于0正数,小于0负数,=0那就是0了。on error resume next n=inputbox("请输入一个数:","提示")if n=false then wscript.quit if n<0 then if err then msgbox "输入错误":err.claer:wscript.quit end if msgbox "负数"elseif n>0 then msgbox "正数"else msgbox "...

VB用IF语句怎么判断textbox1.text中的是否全部为数字。这么编写_百度知 ...
if isnumeric(textbox1.text) then msgbox "是数字"else msgbox "不是数字"end if 或者 if cstr(val(textbox1.text))=trim(textbox1.text) then msgbox "是数字"else msgbox "不是数字"end if

vb的TextBox.Text中怎样判断是不是数字如果不是数字就自动清除输入的数...
键盘只允许输入 0-9 Private Sub Text1_KeyPress(KeyAscii As Integer)If KeyAscii > 57 Or KeyAscii < 48 Then KeyAscii = 0 End Sub 如果允许 小数点 ,就用这句:Private Sub Text1_KeyPress(KeyAscii As Integer)If (KeyAscii > 57 Or KeyAscii < 48) and keyascii<>46 Then KeyAscii =...

vb 检查textbox是否为数字
Private Sub Text1_LostFocus()If IsNumeric(Text1.Text) = False Then Text1.Text = "刚才输入的不是数字,请重新输入"Text1.SelStart = 0 Text1.SelLength = Len(Text1.Text)Text1.SetFocus End If End Sub

vb中如何检测textbox控件中有数字存在?
你这10个textbox最好做成控件数组,这样就可以:Private Sub Text1_Change(Index As Integer)MsgBox "Text1(" & Index & ")中的数据更改了!"End Sub 如果不是控件数组,那么就要分别检测这10个textbox的change事件,烦不烦啊?不懂控件数组的话,可以再问我 ...

相似回答