模仿windows自带的计算器
1 基本的界面要做出来
2 要有菜单栏
3 能有效地实现数字的输入
4 能实现backspace
5 实现“清零按钮”
6 能实现正整数的加法\乘法\除法
7 能实现整数的加法\乘法\除法由于我是新手,只会很基础的VB语言!所以请大家帮忙!

解决方案 »

  1.   

    作业吧。。
    给你个,网上的,界面你可以看到程序自己添加哈。Option Explicit 
    Dim strNumber As String 
    Dim strPoint As String 
    Dim dblNum1 As Double 
    Dim intOperator As Integer 
    '清除结果 
    Private Sub cmdGT_Click() 
    txtDisplay.Text = "0." 
    strNumber = "" 
    strPoint = "." 
    intOperator = 7 
    End Sub 
    '输入数字 
    Private Sub cmdNumber_Click(Index As Integer) 
    strNumber = strNumber & cmdNumber(Index).Caption 
    txtDisplay.Text = strNumber & strPoint 
    End Sub Private Sub cmdOnOff_Click() 
    End 
    End Sub 
    '运算过程 
    Private Sub cmdOperator_Click(Index As Integer) 
    Dim dblnum2 As Double 
    '是第一次单击运算符时,将输入的值先赋给第一个数,否则赋值给第二个数进行运算 
    If intOperator = 7 Then 
    dblNum1 = CDbl(txtDisplay.Text) 
    Else 
    dblnum2 = CDbl(Val(txtDisplay.Text)) 
    '根据输入的符号进行运算 
    '求普通运算 
    Select Case intOperator 
    Case 0 
    dblNum1 = dblNum1 + dblnum2 
    Case 1 
    dblNum1 = dblNum1 - dblnum2 
    Case 2 
    dblNum1 = dblNum1 * dblnum2 
    Case 3 
    If dblnum2 <> 0 Then 
    dblNum1 = dblNum1 / dblnum2 
    Else 
    MsgBox "除数不能为“0”!请重新输入除数。", vbOKOnly + vbInformation, "除零错误" 
    Index = intOperator 
    End If 
    Case 6 
    dblNum1 = dblNum1 * dblnum2 / 100 
    End Select 
    End If '取得当前输入的运算符,以做下次运算 
    intOperator = Index 
    strNumber = "" 
    txtDisplay = CStr(dblNum1) 
    '判断是否为文本框中的数字加点 
    If Not txtDisplay Like "*.*" Then 
    txtDisplay.Text = txtDisplay.Text & "." 
    End If 
    End Sub Private Sub cmdOtherOper_Click(Index As Integer) 
    Dim dblNum As Double 
    '求平方根,平方, 
    dblNum = CDbl(Val(txtDisplay.Text)) Select Case Index 
    Case 0 
    '验证数据是否有效 
    If dblNum >= 0 Then 
    txtDisplay.Text = CStr(Sqr(dblNum)) 
    Else 
    MsgBox "负数不能开平方根!", _ 
    vbOKOnly + vbCritical, "开平方根错误" 
    End If 
    Case 1 
    txtDisplay.Text = CStr(dblNum ^ 2) 
    End Select 
    '判断是否为文本框中的数字加点 
    If Not txtDisplay Like "*.*" Then 
    txtDisplay.Text = txtDisplay.Text & "." 
    End If 
    End Sub Private Sub cmdPoint_Click() 
    strNumber = strNumber & strPoint 
    strPoint = "" 
    End Sub Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) 
    '使被按下的数字键的对应按钮取得焦点 
    Select Case KeyCode 
    Case 48 To 57 
    cmdNumber(KeyCode - 48).SetFocus 
    Case 96 To 105 
    cmdNumber(KeyCode - 96).SetFocus 
    Case Else 
    '使按下的符号键对应的按钮取得焦点 
    If KeyCode = 107 Or (Shift = vbShiftMask And KeyCode = 187) Then 
    cmdOperator(0).SetFocus 
    cmdOperator_Click (0) 
    ElseIf KeyCode = 109 Or KeyCode = 189 Then 
    cmdOperator(1).SetFocus 
    cmdOperator_Click (1) 
    ElseIf KeyCode = 106 Or (Shift = vbShiftMask And KeyCode = 56) Then 
    cmdOperator(2).SetFocus 
    cmdOperator_Click (2) 
    ElseIf KeyCode = 111 Or KeyCode = 191 Then 
    cmdOperator(3).SetFocus 
    cmdOperator_Click (3) 
    ElseIf KeyCode = 13 Then 
    cmdOperator(7).SetFocus 
    cmdOperator_Click (7) 
    ElseIf KeyCode = 8 Then 
    cmdGT.SetFocus 
    Call cmdGT_Click 
    End If 
    End Select 
    End Sub 
    Private Sub Form_KeyPress(KeyAscii As Integer) 
    '将合法的数据输入到文本框 
    Select Case KeyAscii 
    Case 48 To 58 
    '调用数字键点击处理程序 
    cmdNumber_Click KeyAscii - 48 
    KeyAscii = 0 
    Case 46 
    '调用小数点输入 
    cmdPoint_Click 
    KeyAscii = 0 
    Case 13 
    '当敲击回车时,不能触发Form的 KeyUp 事件,因此在这里设置文本框的焦点 
    txtDisplay.SetFocus 
    Case Else 
    KeyAscii = 0 
    End Select 
    End Sub Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer) 
    txtDisplay.SetFocus 
    End Sub Private Sub Form_Load() 
    strNumber = "" 
    strPoint = "." 
    intOperator = 7 
    End Sub
      

  2.   

    VBScript code 这个是论坛的一个帖代码的功能。
    你看下面的,用了哪些控件,相应的添加进去就可以了。还是自己琢磨下哇。