南工程VB课程设计.docx
《南工程VB课程设计.docx》由会员分享,可在线阅读,更多相关《南工程VB课程设计.docx(20页珍藏版)》请在冰豆网上搜索。
南工程VB课程设计
OptionExplicit
PrivateSubBackspace_Click()
Ifopt2=FalseAndbegincal=FalseThen
IfLen(optstr1)>=1Then
optstr1=Left(optstr1,Len(optstr1)-1)
Text1.Text=Val(optstr1)
EndIf
IfLen(optstr2)>=1Then
optstr2=Left(optstr2,Len(optstr2)-1)
Text1.Text=Val(optstr2)
EndIf
EndIf
EndSub
PrivateSubC_Click()
begincal=False
opt2=False
caltype=0
optstr1=""
optstr2=""
Text1.Text=0
EndSub
PrivateSubCE_Click()
Ifopt2=FalseAndbegincal=FalseThen
optstr1=""
Text1.Text=Val(optstr1)
Else
optstr2=""
Text1.Text=Val(optstr2)
EndIf
EndSub
PrivateSubcommamd2_Click(IndexAsInteger)
SelectCaseIndex
Case3
race(3)
Case2
race
(2)
Case1
race
(1)
Case0
race(0)
EndSelect
EndSub
PrivateSubCommand1_Click(IndexAsInteger)
SelectCaseIndex
Case0
strin="0"
receivenum(strin)
Case1
strin="1"
receivenum(strin)
Case2
strin="2"
receivenum(strin)
Case3
strin="3"
receivenum(strin)
Case4
strin="4"
receivenum(strin)
Case5
strin="5"
receivenum(strin)
Case6
strin="6"
receivenum(strin)
Case7
strin="7"
receivenum(strin)
Case8
strin="8"
receivenum(strin)
Case9
strin="9"
receivenum(strin)
Case10
strin="A"
receivenum(strin)
Case11
strin="B"
receivenum(strin)
Case12
strin="C"
receivenum(strin)
Case13
strin="D"
receivenum(strin)
Case14
strin="E"
receivenum(strin)
Case15
strin="F"
receivenum(strin)
EndSelect
EndSub
PrivateSub等号_Click()
cal(caltype)
optstr1=""
optstr2=""
opt2=False
begincal=False
EndSub
PrivateSubForm_Load()
opt2=False
begincal=False
EndSub
PublicFunctionreceivenum(ByValstrinAsString)
Ifopt2=FalseAndbegincal=FalseThen
optstr1=optstr1+strin
Text1.Text=optstr1
Else
optstr2=optstr2+strin
Text1.Text=optstr2
EndIf
EndFunction
PublicFunctioncal(ByValint1AsInteger)
SelectCaseint1
CaseIs=3
optstr1=Val(optstr1)+Val(optstr2)
CaseIs=2
optstr1=Val(optstr1)-Val(optstr2)
CaseIs=1
optstr1=Val(optstr1)*Val(optstr2)
CaseIs=0
optstr1=Val(optstr1)/Sqr(Val(optstr2))
IfVal(optstr2)=0Then
Text1.Text="除数不能为零!
"
optstr1=""
optstr2=""
caltype=0
opt2=False
ExitFunction
Else
optstr1=Val(optstr1)/Sqr(Val(optstr2))
EndIf
CaseElse
EndSelect
Text1.Text=Format(Val(optstr1),"0.#############")
begincal=True
caltype=0
optstr2=""
opt2=False
EndFunction
PublicSubrace(ByValint2AsInteger)
Ifopt2=FalseAndbegincal=FalseThen
caltype=int2
opt2=True
Else
cal(caltype)
caltype=int2
EndIf
EndSub
PrivateSub二进制_Click()
Command1(0).Enabled=True
Command1
(1).Enabled=True
Command1
(2).Enabled=False
Command1(3).Enabled=False
Command1(4).Enabled=False
Command1(5).Enabled=False
Command1(6).Enabled=False
Command1(7).Enabled=False
Command1(8).Enabled=False
Command1(9).Enabled=False
Command1(10).Enabled=False
Command1(11).Enabled=False
Command1(12).Enabled=False
Command1(13).Enabled=False
Command1(14).Enabled=False
Command1(15).Enabled=False
开方.Enabled=False
平方.Enabled=False
立方.Enabled=False
取倒数.Enabled=False
小数点.Enabled=False
Dimm0%
m0=Val(Text1.Text)
Text1.Text=trandec(m0)
EndSub
PrivateSub二进制_DblClick()
Command1(0).Enabled=True
Command1
(1).Enabled=True
Command1
(2).Enabled=False
Command1(3).Enabled=False
Command1(4).Enabled=False
Command1(5).Enabled=False
Command1(6).Enabled=False
Command1(7).Enabled=False
Command1(8).Enabled=False
Command1(9).Enabled=False
Command1(10).Enabled=False
Command1(11).Enabled=False
Command1(12).Enabled=False
Command1(13).Enabled=False
Command1(14).Enabled=False
Command1(15).Enabled=False
开方.Enabled=False
平方.Enabled=False
立方.Enabled=False
取倒数.Enabled=False
小数点.Enabled=False
Diml0$
l0=Text1.Text
Text1.Text=shltoer(l0)
EndSub
PrivateSub开方_Click()
Ifopt2=FalseAndbegincal=FalseThen
optstr1=Val(optstr1)
Ifoptstr1<0Then
Text1.Text="被开方数不能为负数!
"
Else
Text1.Text=Sqr(optstr1)
EndIf
optstr1=Sqr(optstr1)
Else
optstr2=Val(optstr2)
Ifoptstr2<0Then
Text1.Text="被开方数不能为负数!
"
Else
Text1.Text=Sqr(optstr2)
EndIf
optstr2=Sqr(optstr2)
EndIf
EndSub
PrivateSub立方_Click()
Ifopt2=FalseAndbegincal=FalseThen
optstr1=Val(optstr1)
Text1.Text=optstr1^3
optstr1=optstr1^3
Else
optstr2=Val(optstr2)
Text1.Text=optstr2^3
optstr1=optstr1^3
EndIf
EndSub
PrivateSub平方_Click()
Ifopt2=FalseAndbegincal=FalseThen
optstr1=Val(optstr1)
Text1.Text=optstr1^2
optstr1=optstr1^2
Else
optstr2=Val(optstr2)
Text1.Text=optstr2^2
optstr1=optstr1^2
EndIf
EndSub
PrivateSub取倒数_Click()
Ifopt2=FalseAndbegincal=FalseThen
optstr1=Val(optstr1)
Ifoptstr1<0Then
Text1.Text="被除数不能为负数!
"
Else
Text1.Text=Format(1/optstr1,"0.##########################")
optstr1=1/optstr1
EndIf
Else
optstr2=Val(optstr2)
Ifoptstr2<0Then
Text1.Text="被除数不能为负数!
"
Else
Text1.Text=Format(1/optstr2,"0.##########################")
optstr2=1/optstr2
EndIf
EndIf
EndSub
PrivateSub十进制_Click()
Command1(0).Enabled=True
Command1
(1).Enabled=True
Command1
(2).Enabled=True
Command1(3).Enabled=True
Command1(4).Enabled=True
Command1(5).Enabled=True
Command1(6).Enabled=True
Command1(7).Enabled=True
Command1(8).Enabled=True
Command1(9).Enabled=True
Command1(10).Enabled=False
Command1(11).Enabled=False
Command1(12).Enabled=False
Command1(13).Enabled=False
Command1(14).Enabled=False
Command1(15).Enabled=False
开方.Enabled=True
平方.Enabled=True
立方.Enabled=True
取倒数.Enabled=True
小数点.Enabled=True
Dimn0&
n0=Val(Text1.Text)
Text1.Text=ertosh(n0)
EndSub
PrivateSub十进制_DblClick()
Command1(0).Enabled=True
Command1
(1).Enabled=True
Command1
(2).Enabled=True
Command1(3).Enabled=True
Command1(4).Enabled=True
Command1(5).Enabled=True
Command1(6).Enabled=True
Command1(7).Enabled=True
Command1(8).Enabled=True
Command1(9).Enabled=True
Command1(10).Enabled=False
Command1(11).Enabled=False
Command1(12).Enabled=False
Command1(13).Enabled=False
Command1(14).Enabled=False
Command1(15).Enabled=False
开方.Enabled=True
平方.Enabled=True
立方.Enabled=True
取倒数.Enabled=True
小数点.Enabled=True
Dimj0AsString
j0=Text1.Text
Text1.Text=shltosh(j0)
EndSub
PrivateSub十六进制_Click()
Command1(0).Enabled=True
Command1
(1).Enabled=True
Command1
(2).Enabled=True
Command1(3).Enabled=True
Command1(4).Enabled=True
Command1(5).Enabled=True
Command1(6).Enabled=True
Command1(7).Enabled=True
Command1(8).Enabled=True
Command1(9).Enabled=True
Command1(10).Enabled=True
Command1(11).Enabled=True
Command1(12).Enabled=True
Command1(13).Enabled=True
Command1(14).Enabled=True
Command1(15).Enabled=True
开方.Enabled=False
平方.Enabled=False
立方.Enabled=False
取倒数.Enabled=False
Dimh0AsLong
h0=Text1.Text
Text1.Text=shtoshl(h0)
EndSub
PrivateSub十六进制_DblClick()
Command1(0).Enabled=True
Command1
(1).Enabled=True
Command1
(2).Enabled=True
Command1(3).Enabled=True
Command1(4).Enabled=True
Command1(5).Enabled=True
Command1(6).Enabled=True
Command1(7).Enabled=True
Command1(8).Enabled=True
Command1(9).Enabled=True
Command1(10).Enabled=True
Command1(11).Enabled=True
Command1(12).Enabled=True
Command1(13).Enabled=True
Command1(14).Enabled=True
Command1(15).Enabled=True
开方.Enabled=False
平方.Enabled=False
立方.Enabled=False
取倒数.Enabled=False
Dimg0AsString
g0=Text1.Text
Text1.Text=ertoshl(g0)
EndSub
PrivateSub小数点_Click()
IfInStr(Text1.Text,".")=0Then
strin="."
receivenum(strin)
EndIf
EndSub
PrivateSub正负号_Click()
Ifopt2=FalseAndbegincal=FalseThen
optstr1=-1*Val(optstr1)
Text1.Text=optstr1
Else
optstr2=-1*Val(optstr2)
Text1.Text=optstr2
EndIf
EndSub
PublicFunctiontrandec(ByValm%)
Dimstrdtor$,mr%
strdtor=""
DoWhilem<>0
mr=mMod2
m=m\2
strdtor=mr&strdtor
Loop
trandec=strdtor
EndFunction
PublicFunctionertosh(ByValn$)
DimiAsLong,aAsInteger,BAsInteger,CAsInteger
Fori=1ToLen(n)
a=Mid(n,i,1)
B=a*2^(Len(n)-i)
C=C+B
Nexti
ertosh=C
EndFunction
PublicFunctionshltoer(ByVall$)
DimiAsLong
DimBAsString
Fori=1ToLen(l)
SelectCaseMid(l,i,1)
Case"0":
B=B&"0000"
Case"1":
B=B&"0001"
Case"2":
B=B&"0010"
Case"3":
B=B&"0011"
Case"4":
B=B&"0100"
Case"5":
B=B&"0101"
Case"6":
B=B&"0110"
Case"7":
B=B&"0111"
Case"8":
B=B&"1000"
Case"9":
B=B&"1001"
Case"A":
B=B&"1010"
Case"B":
B=B&"1011"
Case"C":
B=B&"1100"
Case"D":
B=B&"1101"
Case"E":
B=B&"1110"
Case"F":
B=B&"1111"
EndSelect
Nexti
WhileLeft(B,1)="0"
B=Right(B,Len(B)-1)
Wend
shltoer=B
EndFunction
PublicFunctionshltosh(ByValjAsString)
DimiAsLong
DimBAsLong
Fori=1ToLen(j)
SelectCaseMid(j,Len(j)-i+1,1)
Case"0":
B=B+16^(i-1)*0
Case"1":
B=B+16^(i-1)*1
Case"2":
B=B+16^(i-1)*2
Case"3":
B=B+16^(i-1)*3
Case"4":
B=B+16^(i-1)*4
Case"5":
B=B+16^(i-1)*5
Case"6":
B=B+16^(i-1)*6
Case"7":
B=B+16^(i-1)*7
Case"8":
B=B+16^(i-1)*8
Case"9":
B=B+16^(i-1)*9
Case"A":
B=B+16^(i-1)*10
Case"B":
B=B+16^(i-1)*11
Case"C":
B=B+16^(i-1)*12
Case"D":
B=B+16^(i-1)*13
Case"E":
B=B