vb编程,目的是根据输入的直角三角形的直角边长计算周长及面积.
想在没填数据或者填的不是数字的时候弹出一个消息框.代码是:
Private Sub Command1_Click()
If IsEmpty(Text1.Text) = True Or IsEmpty(Text2.Text) = True Then
m = MsgBox("请完整输入!",vbInformation,"提示")
ElseIf IsNumeric(Text1.Text) = True And IsNumeric(Text2.Text) = True Then
x = Val(Text1.Text)
y = Val(Text2.Text)
Text4.Text = LTrim(Str(0.5 * x * y))
Text3.Text = LTrim(Str(Round((x + y + (x ^ 2 + y ^ 2) ^ 0.5),2)))
Else:z = MsgBox("请检查数据格式(整数或小数)!",vbOKOnly + vbCritical + vbSystemModal,"错误")
End If
End Sub
Text1和2是输入直角边边长的地方.Text3是周长,Text4是面积.结果运行的时候就算有没填的也不会弹出“请完整输入”的消息框,但会弹出“请检查数据格式”的消息框.我对着书上看了2个小时都没弄好!
还有,就是如果不加LTrim的话,算出的结果前面会有一个空格,何故?
人气:426 ℃ 时间:2020-05-21 02:40:32
解答
IsEmpty不要这样用,判断文本框是否有内容可以改成Trim(Text1.Text) = "",Trim表示把文本框内的空格去掉.LTrim表示将内容左边开始去掉空格,所以就会出现所说的情况.Private Sub Command1_Click()If Trim(Text1.Text) ...谢谢!消息框的问题解决了,可是我还是不明白为什么不加LTrim就会出现空格,空格是哪里出来的?我输入直角边长的时候没有空格啊。因为你用到了str()这个函数,这个函数有个弊端,就是转换数字为字符串时,正数会默认在前面加入一个空格,而负数不会。有说法,正负符号位,正值默认一空格。具体,微软的解释 是:当数字转换为字符串时,始终为 Number 的符号保留一个前导空格。如果 Number 为正,则返回的字符串包含前导空格,并暗含加号。负数将包括减号 (-),且没有前导空格。你可以看看msdn.microsoft.com/zh-cn/library/4y6a1sx7(v=vs.80).aspx当然也可以试试cstr()这个函数,就不会有这个问题了,ltrim函数也可以去掉Private Sub Command1_Click()If Trim(Text1.Text) = "" Or Trim(Text2.Text) = "" Thenm = MsgBox("请完整输入!", vbInformation, "提示")ElseIf IsNumeric(Text1.Text) = True And IsNumeric(Text2.Text) = True Thenx = Val(Text1.Text)y = Val(Text2.Text)Text4.Text = CStr(0.5 * x * y)Text3.Text = CStr(Round((x + y + (x ^ 2 + y ^ 2) ^ 0.5), 2))Else: z = MsgBox("请检查数据格式(整数或小数)!", vbOKOnly + vbCritical + vbSystemModal, "错误")End IfEnd Sub
推荐
- 求VB计算长方形的周长和面积编程
- 直角三角形周长为12cm,斜边长为5cm,求直角三角形的面积.
- 直角三角形的周长为24,斜边长为10,则其面积为——————————
- 如果直角三角形的三条边长都是整数,且一条直角边长为4,周长为12,那么三角型的面积为
- 直角三角形的周长是12厘米,斜边长5厘米,一条直角边长4厘米,这个直角三角形的面积是()
- 兔子的英语怎么写
- 鸡蛋鸭蛋共有32箱,重438千克,鸡蛋每箱15千克,鸭蛋每箱12千克.鸡蛋,鸭蛋各有多少箱?
- 一个长方体木箱的体积是160立方米,底面积是32平方分米,它的高与一个正方体的棱长相等,这个正方体的体积
猜你喜欢
- 鉴定食物中含有比较多的蛋白质,可以选用___或___做实验材料 鉴定食物中含有比较多的脂肪,可以选用___或___
- 四年级关于汽车想象作文
- 用词语《信服,嫩芽,霎时,拆散,委屈,分歧,取决,水波粼粼,各得其所》写作文300字以上
- Different from other cars,they get a warm welcome from a lot of
- 是how is you parents?how ara your parents?
- 求一个幽默又有寓意的小故事
- 稀硫酸和铁单质反应后将反应物通入氢氧化钠溶液中,再将此混合物倒入表面皿中,可观察到的现象和反应方程
- 2012年6月16日18时37分,“神舟九号”飞船在酒泉卫星发射中心发射升空.当其升空时