vb中text显示问题

dimaasdoubledimbasdoubledimcasdoubleprivatesubcommand1_click()a=text1.textb=text2.tex... dim a as double
dim b as double
dim c as double
private sub command1_click()
a=text1.text
b=text2.text
text3.text = (a *0.403) / (b - a + (a*0.403))
end sub
private sub command2_click()
text1.text =""
text2.text =""
text3.text =""
end sub
现在问题是text3.text 显示计算结果都不显示0 都是从0以上的算起
比如计算结果是0.0258 它只显示2.58
还有就是怎么让text只能输入数字和小数点 不能输入字母和其它的,当输入其它的来个msgbox提示下 请输入数字
求大神指导 或直接加QQ 27973243
在线等 !~~
展开
 我来答
zx001z7d53
2012-08-05 · TA获得超过2万个赞
知道大有可为答主
回答量:2.4万
采纳率:52%
帮助的人:5605万
展开全部
第一个问题这样解决
text3.text =format (a *0.403) / (b - a + (a*0.403),"0.0000")
第二个问题:最好不要出现提示,很烦人,可以在输入的时候屏蔽掉,需要在用户按下键盘键的事件中写代码:

Private Sub Text1_KeyPress(KeyAscii As Integer)
Me.Caption = KeyAscii '现实KeyAscii
If KeyAscii = 13 Then Exit Sub '允许输入回车
'If KeyAscii = 43 Then Exit Sub '允许输入+号
'If KeyAscii = 45 Then Exit Sub '允许输入-号
If KeyAscii = 46 Then Exit Sub '允许输入小数点

If KeyAscii < 48 Or KeyAscii > 57 Then '屏蔽数字外的所有符号
KeyAscii = 0
End If
End Sub
吹花PM
2012-08-05 · TA获得超过946个赞
知道小有建树答主
回答量:635
采纳率:0%
帮助的人:605万
展开全部
首先补充一下楼上几位的代码,在限制输入方面思路是很简单的,但是有一点容易遗漏,那就是BackSpace键不能被屏蔽,否则无法退格。以下是补充zx001z先生的代码。
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Or KeyAscii = 46 Or KeyAscii = 8 Then Exit Sub '允许输入回车,小数点,退格
If KeyAscii < 48 Or KeyAscii > 57 Then KeyAscii = 0 '屏蔽数字外的所有符号
End Sub

对于第一条,我觉得text3的显示结果是正确的运算结果,如果想格式化显示,那么用他们推荐的format;但是如果你出现运算错误,那么问题就不在这儿了。我觉得在给a,b赋值时最好还是严格一下:
a = Val(Text1.Text)
b = Val(Text2.Text)
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
陕B4444
2012-08-05 · 超过70用户采纳过TA的回答
知道小有建树答主
回答量:207
采纳率:0%
帮助的人:79.1万
展开全部
额 花了30分钟百度 结果凑合着看吧

Dim a As Double
Dim b As Double
Dim c As Double
Private Sub command1_click()
If Format(0#, Text1.Text, "0.000000") <> True Then
MsgBox "格式错误 请重新输入Text1 正确格式0.000000"
Text1.Text = ""
Exit Sub
End If
If Format(0#, Text2.Text, "0.000000") <> True Then
MsgBox "格式错误 请重新输入Text2 正确格式0.000000"
Text2.Text = ""
Exit Sub
End If
a = Text1.Text
b = Text2.Text
Text3 = Format(a * 0.403 / (b - a + (a * 0.403)), "0.000000")
End Sub
Private Sub command2_click()
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
End Sub
Private Sub Form_Load()
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
牛人影视
2012-08-05 · TA获得超过1395个赞
知道大有可为答主
回答量:1491
采纳率:0%
帮助的人:1607万
展开全部
只能输入数字和小数点:
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 46 Or (KeyAscii > 47 And KeyAscii < 58) Then
Else
KeyAscii = 0
MsgBox "请输入数字"
End If
End Sub

关于计算结果,请检查计算公式的正确性
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lfc7422_lc
2012-08-07 · TA获得超过288个赞
知道答主
回答量:219
采纳率:100%
帮助的人:65.7万
展开全部
text3.text =""这个编译有点问题
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式