[讨论]如何制作一个简单计算器
<P>RT.............</P><P>做出来后在跟帖里发上来吧!</P>
<P>别以为很容易哦!!呵呵</P>
<P>细节的处理与BUG的问题会让你晕晕的</P> 哈哈 好 ! <P>我的大概就这个样子:</P><P>Option Explicit
Dim a!, b!
Dim stra As String, strb As String
Dim c As Boolean '判断开头数字
Dim runsign%, signflag As Boolean
Dim pointflag As Boolean '判断小数点
Dim aim!</P><P>Private Sub Command1_Click(Index As Integer)
Select Case Index
'10个数字键
Case 0 To 9
If c Then
stra = Str(a)
c = False
Else
stra = stra & Str(Index)
End If
Text1.Text = stra
'小数点
Case 10
If Not pointflag Then
If c Then
stra = "0."
c = False
Else
stra = stra & "."
End If
End If
pointflag = True
Text1.Text = stra
'等于号
Case 11
If Not signflag Then
Text1.Text = stra
aim = Val(stra)
c = True
pointflag = False
Else
Call run
signflag = False
End If
'四则运算
Case 12 To 15</P><P> c = True
pointflag = False</P><P> If signflag Then</P><P> Call run</P><P> Else</P><P> signflag = True
strb = stra
stra = ""
End If
runsign = Index - 11
Case Else
Call Clear
End Select
End Sub
'四则运算过程
Sub run()
a = Val(strb)
b = Val(stra)
Select Case runsign
Case 1
aim = a + b
Case 2
aim = a - b
Case 3
aim = a * b
Case 4
aim = a / b</P><P>
End Select
strb = Str(aim)
stra = strb
Text1.Text = strb
End Sub</P><P>Private Sub Form_Load()
Call Clear
End Sub
'清除过程
Sub Clear()
Text1.Text = "0." '默认数字
Text1.FontBold = True
Text1.FontSize = 14
a = 0: b = 0: stra = "": strb = "" '变量清零
c = True
runsign = 0
signflag = False
pointflag = False
End Sub</P><P>但是有两个问题没有解决:1.第一次点击一个数字要点两次,因为第一次点是0(不知道怎么回事)</P><P> 2.做连续的运算的时候text显示的上面的数字不能清零</P><P>这两个问题俺弄不出来了 !请大哥们指点下!</P> <P>第一次做所谓的“项目” 问题多多,哎,看来水平还是差的远的很!</P><P>狂努力哈~!</P> 呵呵,我看看~~ <P>你看哈!</P><P>热死我拉</P><P>我洗澡去哈!</P> 最好做成包让大家下载 <P>行那我上传把! 忘记拉 失误!</P> <P>大哥帮我该该哈 我发了新贴有包 ! </P><P>下了看!</P> 好啊,只要是去学就是好事情,大家一起努力一起进步!!!!!!!!! 笑得真恐怖....你的头像是黄秋生吗?
页:
[1]