vb編程,目的是根據(jù)輸入的直角三角形的直角邊長(zhǎng)計(jì)算周長(zhǎng)及面積.
vb編程,目的是根據(jù)輸入的直角三角形的直角邊長(zhǎng)計(jì)算周長(zhǎng)及面積.
想在沒(méi)填數(shù)據(jù)或者填的不是數(shù)字的時(shí)候彈出一個(gè)消息框.代碼是:
Private Sub Command1_Click()
If IsEmpty(Text1.Text) = True Or IsEmpty(Text2.Text) = True Then
m = MsgBox("請(qǐng)完整輸入!",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("請(qǐng)檢查數(shù)據(jù)格式(整數(shù)或小數(shù))!",vbOKOnly + vbCritical + vbSystemModal,"錯(cuò)誤")
End If
End Sub
Text1和2是輸入直角邊邊長(zhǎng)的地方.Text3是周長(zhǎng),Text4是面積.結(jié)果運(yùn)行的時(shí)候就算有沒(méi)填的也不會(huì)彈出“請(qǐng)完整輸入”的消息框,但會(huì)彈出“請(qǐng)檢查數(shù)據(jù)格式”的消息框.我對(duì)著書(shū)上看了2個(gè)小時(shí)都沒(méi)弄好!
還有,就是如果不加LTrim的話,算出的結(jié)果前面會(huì)有一個(gè)空格,何故?
想在沒(méi)填數(shù)據(jù)或者填的不是數(shù)字的時(shí)候彈出一個(gè)消息框.代碼是:
Private Sub Command1_Click()
If IsEmpty(Text1.Text) = True Or IsEmpty(Text2.Text) = True Then
m = MsgBox("請(qǐng)完整輸入!",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("請(qǐng)檢查數(shù)據(jù)格式(整數(shù)或小數(shù))!",vbOKOnly + vbCritical + vbSystemModal,"錯(cuò)誤")
End If
End Sub
Text1和2是輸入直角邊邊長(zhǎng)的地方.Text3是周長(zhǎng),Text4是面積.結(jié)果運(yùn)行的時(shí)候就算有沒(méi)填的也不會(huì)彈出“請(qǐng)完整輸入”的消息框,但會(huì)彈出“請(qǐng)檢查數(shù)據(jù)格式”的消息框.我對(duì)著書(shū)上看了2個(gè)小時(shí)都沒(méi)弄好!
還有,就是如果不加LTrim的話,算出的結(jié)果前面會(huì)有一個(gè)空格,何故?
其他人氣:508 ℃時(shí)間:2020-05-21 02:40:32
優(yōu)質(zhì)解答
IsEmpty不要這樣用,判斷文本框是否有內(nèi)容可以改成Trim(Text1.Text) = "",Trim表示把文本框內(nèi)的空格去掉.LTrim表示將內(nèi)容左邊開(kāi)始去掉空格,所以就會(huì)出現(xiàn)所說(shuō)的情況.Private Sub Command1_Click()If Trim(Text1.Text) ...謝謝!消息框的問(wèn)題解決了,可是我還是不明白為什么不加LTrim就會(huì)出現(xiàn)空格,空格是哪里出來(lái)的?我輸入直角邊長(zhǎng)的時(shí)候沒(méi)有空格啊。因?yàn)槟阌玫搅藄tr()這個(gè)函數(shù),這個(gè)函數(shù)有個(gè)弊端,就是轉(zhuǎn)換數(shù)字為字符串時(shí),正數(shù)會(huì)默認(rèn)在前面加入一個(gè)空格,而負(fù)數(shù)不會(huì)。有說(shuō)法,正負(fù)符號(hào)位,正值默認(rèn)一空格。具體,微軟的解釋 是:當(dāng)數(shù)字轉(zhuǎn)換為字符串時(shí),始終為 Number 的符號(hào)保留一個(gè)前導(dǎo)空格。如果 Number 為正,則返回的字符串包含前導(dǎo)空格,并暗含加號(hào)。負(fù)數(shù)將包括減號(hào) (-),且沒(méi)有前導(dǎo)空格。你可以看看msdn.microsoft.com/zh-cn/library/4y6a1sx7(v=vs.80).aspx當(dāng)然也可以試試cstr()這個(gè)函數(shù),就不會(huì)有這個(gè)問(wèn)題了,ltrim函數(shù)也可以去掉Private Sub Command1_Click()If Trim(Text1.Text) = "" Or Trim(Text2.Text) = "" Thenm = MsgBox("請(qǐng)完整輸入!", 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("請(qǐng)檢查數(shù)據(jù)格式(整數(shù)或小數(shù))!", vbOKOnly + vbCritical + vbSystemModal, "錯(cuò)誤")End IfEnd Sub
我來(lái)回答
類似推薦
- 求VB計(jì)算長(zhǎng)方形的周長(zhǎng)和面積編程
- 直角三角形周長(zhǎng)為12cm,斜邊長(zhǎng)為5cm,求直角三角形的面積.
- 直角三角形的周長(zhǎng)為24,斜邊長(zhǎng)為10,則其面積為——————————
- 如果直角三角形的三條邊長(zhǎng)都是整數(shù),且一條直角邊長(zhǎng)為4,周長(zhǎng)為12,那么三角型的面積為
- 直角三角形的周長(zhǎng)是12厘米,斜邊長(zhǎng)5厘米,一條直角邊長(zhǎng)4厘米,這個(gè)直角三角形的面積是()
- 有"9v 3w"的燈泡1和"12v 6w"的燈泡2串聯(lián),電路中兩端允許加的最大電壓是多少?每個(gè)燈的電功率?
- 一罐液化氣大約有多少立方?
- 小池古詩(shī)的意思
- 一根電線,第一次用去1/3還多2米,第二次用去余下的2/5少3米,最后還剩11米.這根電線長(zhǎng)多少米?
- 原有蘋果21千克,葡萄13千克,這兩種水果被吃掉相同的重量之后,所剩葡萄的重量是所剩蘋果重量的十三之八
- 全班有51人,下課后男生走了4分之1,女生走了3分之1,人數(shù)相等,女生有幾人
- 關(guān)于x的不等式3m-2x2,m的值是什么
猜你喜歡
- 1書(shū)非借不能讀也的也怎么解釋
- 2我愛(ài)我們的節(jié)日——春節(jié)征文、急需、
- 3GB2828二次抽樣方案什么情況下適用
- 4賓語(yǔ)與表語(yǔ)兩個(gè)如何判斷?
- 5Hello!__is Lin Tao.Could you tell me if __is a history museum in your city?此句怎么寫
- 6四年級(jí)下冊(cè)14課《陳嘉庚辦學(xué)》讀后感.在今天(4月9日)16時(shí)10分發(fā)來(lái).(原文
- 7This is a _____ of my family.
- 8李奶奶家中有一筐雞蛋,2個(gè)2個(gè)的數(shù),3個(gè)3個(gè)的數(shù),5個(gè)5個(gè)的數(shù),都剩余一個(gè),這筐雞蛋至少有多少個(gè)?
- 9如圖所示,長(zhǎng)木板靜止在光滑的水平面上,長(zhǎng)木板的左端固定一個(gè)檔板,檔板上固定一個(gè)長(zhǎng)度為L(zhǎng)的輕質(zhì)彈簧,長(zhǎng)木板與檔板的總質(zhì)量為M,在木板的右端有一質(zhì)量為m的鐵塊.現(xiàn)給鐵塊一個(gè)水平
- 10一些孩子在操場(chǎng)上奔跑 翻譯
- 11一道比較難的集合題謝謝了,
- 12難忘的八個(gè)字 閱讀題答案!