怎样用VB做一个按键式的计算器

计算器做成如图所示模样求一下各个控件的代码注意是用label不是text... 计算器做成如图所示模样 求一下各个控件的代码
注意是用 label 不是text
展开
 我来答
棘棘芽
推荐于2017-12-15 · TA获得超过563个赞
知道小有建树答主
回答量:608
采纳率:100%
帮助的人:560万
展开全部
Private Enum JS
    加
    减
    乘
    除
    没有
End Enum
Private Str$, D As Boolean, DH As Boolean
Private su(1 To 2) As Double, JSF As JS

Private Sub CBackspace_Click() '后退
If Len(Str) > 1 Then '大于两个字符
  Str = Left(Str, Len(Str) - 1) '减去一个字符
  If InStr(Str, ".") = 0 Then D = False '如果减去的为点,设置点标志
Else
  If Str <> "0" Then Str = "0" '如果为1位,直接清零
End If
PrintText
End Sub

Private Sub CCE_Click() '清除当前数值 ,清屏
Str = "0"
D = False
PrintText
End Sub

Private Sub CC_Click() '清除,归零
ExeInte
PrintText
End Sub

Private Sub CDeng_Click() '等号的运算
Dim i% '申请integer变量
i = JSF '运算标识号转为integer 不然会出错 enum 为 long型
DH = True '设置等号标志为true
 YunSuan_Click i '调用计算
 DH = False '设置等号标志为False
End Sub

Private Sub sum_Click(Index As Integer) '0 to 9 的数组换件索引
  Str = Val(Str & Index)
  PrintText
End Sub
Private Sub PrintText() '显示处理
If Str = "" Then Str = "0" '为空时,初始为0
  If D Then '如果按过点
    If Left(Str, 1) = "." Then Str = "0" & Str '如果点为开始 ,即数值小于1
    Text1.Text = Str '显示
  Else
    Text1.Text = Str & "." '没有点时加上
  End If
End Sub


Private Sub Vd_Click() '点的处理
If D = False Then
  Str = Str & "."
  D = True
End If
End Sub
Private Sub FUValue() '字符转成数值
 su(2) = Val(Str)
 If DH = False Then
   Str = "0"
   D = False
 End If
End Sub
Private Sub YunSuan_Click(Index As Integer)
On Error GoTo E
   FUValue '字符转成数值
  Select Case JSF '进行计算
         Case 加: su(1) = su(1) + su(2)
         Case 减: su(1) = su(1) - su(2)
         Case 乘: su(1) = su(1) * su(2)
         Case 除: su(1) = su(1) / su(2)
         Case 没有
  End Select
  If su(1) Then Text1.Text = IIf(su(1) Mod 1 = 0, su(1) & ".", su(1)) '显示计算后的值!
  JSF = Index
  Exit Sub
E:
   Text1.Text = "ERROR"
   Str = "0"
   D = False
   JSF = 没有
End Sub
Private Sub ExeInte() '参数初始
   Str = "0"
   D = False
   JSF = 没有
   su(1) = 0
   su(2) = 0
   DH = False
End Sub

追问
能补充一下各段代码都写在哪个控件里吗    实在搞不懂
追答

源码 在此 只要把 TextBox 换成 Label 就行

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式