Advertisement
Guest User

Untitled

a guest
Oct 1st, 2019
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. Public Class calcArea
  2.     'Operands
  3.    Private num1 As Double
  4.     Private num2 As Double
  5.     'Temporary values
  6.    Private tempValue As Double
  7.     'Memory storage
  8.    Private Memory As Double
  9.     'True if "," is use else false
  10.    Private hasDecimal As Boolean
  11.     Private inputStatus As Boolean
  12.     Private clearText As Boolean
  13.     'Operator
  14.    Private calcFunction As String
  15.  
  16. #Region "Number Buttons"
  17.     Private Sub Btn_0_Click(sender As Object, e As EventArgs) Handles btn_0.Click
  18.         If inputStatus = False Then
  19.             If lbl_input.Text.Length >= 1 Then
  20.                 lbl_input.Text += btn_0.Text
  21.  
  22.             End If
  23.         End If
  24.     End Sub
  25.  
  26.     Private Sub Btn_1_Click(sender As Object, e As EventArgs) Handles btn_1.Click
  27.         If inputStatus = False Then
  28.             lbl_input.Text += btn_1.Text
  29.         Else
  30.             lbl_input.Text = btn_1.Text
  31.             inputStatus = False
  32.         End If
  33.     End Sub
  34.  
  35.     Private Sub Btn_2_Click(sender As Object, e As EventArgs) Handles btn_2.Click
  36.         If inputStatus = False Then
  37.             lbl_input.Text += btn_2.Text
  38.         Else
  39.             lbl_input.Text = btn_2.Text
  40.             inputStatus = False
  41.         End If
  42.     End Sub
  43.  
  44.     Private Sub Btn_3_Click(sender As Object, e As EventArgs) Handles btn_3.Click
  45.         If inputStatus = False Then
  46.             lbl_input.Text += btn_3.Text
  47.         Else
  48.             lbl_input.Text = btn_3.Text
  49.             inputStatus = False
  50.         End If
  51.     End Sub
  52.  
  53.     Private Sub Btn_4_Click(sender As Object, e As EventArgs) Handles btn_4.Click
  54.         If inputStatus = False Then
  55.             lbl_input.Text += btn_4.Text
  56.         Else
  57.             lbl_input.Text = btn_4.Text
  58.             inputStatus = False
  59.         End If
  60.     End Sub
  61.  
  62.     Private Sub Btn_5_Click(sender As Object, e As EventArgs) Handles btn_5.Click
  63.         If inputStatus = False Then
  64.             lbl_input.Text += btn_5.Text
  65.         Else
  66.             lbl_input.Text = btn_5.Text
  67.             inputStatus = False
  68.         End If
  69.     End Sub
  70.  
  71.     Private Sub Btn_6_Click(sender As Object, e As EventArgs) Handles btn_6.Click
  72.         If inputStatus = False Then
  73.             lbl_input.Text += btn_6.Text
  74.         Else
  75.             lbl_input.Text = btn_6.Text
  76.             inputStatus = False
  77.         End If
  78.     End Sub
  79.  
  80.     Private Sub Btn_7_Click(sender As Object, e As EventArgs) Handles btn_7.Click
  81.         If inputStatus = False Then
  82.             lbl_input.Text += btn_7.Text
  83.         Else
  84.             lbl_input.Text = btn_7.Text
  85.             inputStatus = False
  86.         End If
  87.     End Sub
  88.  
  89.     Private Sub Btn_8_Click(sender As Object, e As EventArgs) Handles btn_8.Click
  90.         If inputStatus = False Then
  91.             lbl_input.Text += btn_8.Text
  92.         Else
  93.             lbl_input.Text = btn_8.Text
  94.             inputStatus = False
  95.         End If
  96.     End Sub
  97.  
  98.     Private Sub Btn_9_Click(sender As Object, e As EventArgs) Handles btn_9.Click
  99.         If inputStatus = False Then
  100.             lbl_input.Text += btn_9.Text
  101.         Else
  102.             lbl_input.Text = btn_9.Text
  103.             inputStatus = False
  104.         End If
  105.     End Sub
  106.  
  107. #End Region
  108.  
  109. #Region "Calculation Buttons"
  110.     Private Sub Btn_plus_Click(sender As Object, e As EventArgs) Handles btn_plus.Click
  111.         If lbl_input.Text.Length <> 0 Then
  112.             If calcFunction = String.Empty Then
  113.                 num1 = CDbl(lbl_input.Text)
  114.                 lbl_input.Text = String.Empty
  115.             Else
  116.                 CalculateTotals()
  117.             End If
  118.             calcFunction = "Add"
  119.             hasDecimal = False
  120.  
  121.         End If
  122.     End Sub
  123.  
  124.     Private Sub Btn_minus_Click(sender As Object, e As EventArgs) Handles btn_minus.Click
  125.         If lbl_input.Text.Length <> 0 Then
  126.             If calcFunction = String.Empty Then
  127.                 num1 = CDbl(lbl_input.Text)
  128.                 lbl_input.Text = String.Empty
  129.             Else
  130.                 CalculateTotals()
  131.             End If
  132.             calcFunction = "Substract"
  133.             hasDecimal = False
  134.         End If
  135.     End Sub
  136.  
  137.     Private Sub Btn_slash_Click(sender As Object, e As EventArgs) Handles btn_slash.Click
  138.         If lbl_input.Text.Length <> 0 Then
  139.             If calcFunction = String.Empty Then
  140.                 num1 = CDbl(lbl_input.Text)
  141.                 lbl_input.Text = String.Empty
  142.             Else
  143.                 CalculateTotals()
  144.             End If
  145.             calcFunction = "Divide"
  146.             hasDecimal = False
  147.         End If
  148.     End Sub
  149.  
  150.     Private Sub Btn_mpp_Click(sender As Object, e As EventArgs) Handles btn_mpp.Click
  151.         If lbl_input.Text.Length <> 0 Then
  152.             If calcFunction = String.Empty Then
  153.                 num1 = CDbl(lbl_input.Text)
  154.                 lbl_input.Text = String.Empty
  155.             Else
  156.                 CalculateTotals()
  157.             End If
  158.             calcFunction = "Multiply"
  159.             hasDecimal = False
  160.         End If
  161.     End Sub
  162.  
  163.     Private Sub Btn_upper_Click(sender As Object, e As EventArgs) Handles btn_upper.Click
  164.         If lbl_input.Text.Length <> 0 Then
  165.             If calcFunction = String.Empty Then
  166.                 num1 = CDbl(lbl_input.Text)
  167.                 lbl_input.Text = String.Empty
  168.             Else
  169.                 CalculateTotals()
  170.             End If
  171.             calcFunction = "PowerOf"
  172.             hasDecimal = False
  173.         End If
  174.     End Sub
  175.  
  176.     Private Sub Btn_sqrt_Click(sender As Object, e As EventArgs) Handles btn_sqrt.Click
  177.         If lbl_input.Text.Length <> 0 Then
  178.             tempValue = CDbl(lbl_input.Text)
  179.             tempValue = System.Math.Sqrt(tempValue)
  180.                 lbl_input.Text = CStr(tempValue)
  181.                 hasDecimal = False
  182.             End If
  183.     End Sub
  184.  
  185.     Private Sub Btn_equal_Click(sender As Object, e As EventArgs) Handles btn_equal.Click
  186.         If lbl_input.Text.Length <> 0 AndAlso num1 <> 0 Then
  187.             CalculateTotals()
  188.             calcFunction = ""
  189.         hasDecimal = False
  190.         End If
  191.     End Sub
  192.  
  193.     Private Sub Btn_below_Click(sender As Object, e As EventArgs) Handles btn_below.Click
  194.         If lbl_input.Text.Length <> 0 Then
  195.             tempValue = CDbl(lbl_input.Text)
  196.             tempValue = 1 / tempValue
  197.             lbl_input.Text = CStr(tempValue)
  198.             hasDecimal = False
  199.         End If
  200.     End Sub
  201.  
  202.     Private Sub Btn_plusminus_Click(sender As Object, e As EventArgs) Handles btn_plusminus.Click
  203.         If inputStatus = False Then
  204.             If lbl_input.Text.Length > 0 Then
  205.                 tempValue = -1 * CDbl(lbl_input.Text)
  206.                 lbl_input.Text = CStr(tempValue)
  207.             End If
  208.         End If
  209.     End Sub
  210.  
  211.  
  212. #End Region
  213.  
  214. #Region "Other Buttons"
  215.     Private Sub Btn_CE_Click(sender As Object, e As EventArgs) Handles btn_CE.Click
  216.         lbl_input.Text = String.Empty
  217.         hasDecimal = False
  218.     End Sub
  219.  
  220.     Private Sub Btn_C_Click(sender As Object, e As EventArgs) Handles btn_C.Click
  221.         lbl_input.Text = String.Empty
  222.         num1 = 0
  223.         num2 = 0
  224.         calcFunction = String.Empty
  225.         hasDecimal = False
  226.     End Sub
  227.  
  228.     Private Sub Btn_backspace_Click(sender As Object, e As EventArgs) Handles btn_backspace.Click
  229.         Dim str As String
  230.         Dim loc As Integer
  231.         If lbl_input.Text.Length > 0 Then
  232.             str = lbl_input.Text.Chars(lbl_input.Text.Length - 1)
  233.             If str = "." Then
  234.                 hasDecimal = False
  235.             End If
  236.             loc = lbl_input.Text.Length
  237.             lbl_input.Text = lbl_input.Text.Remove(loc - 1, 1)
  238.         End If
  239.     End Sub
  240.  
  241.     Private Sub Btn_dot_Click(sender As Object, e As EventArgs) Handles btn_dot.Click
  242.         If Not inputStatus Then
  243.             If Not hasDecimal Then
  244.                 If lbl_input.Text.Length >= 1 Then
  245.                     If Not lbl_input.Text = "0" Then
  246.                         lbl_input.Text += ","
  247.                         hasDecimal = True
  248.                     End If
  249.                 Else
  250.                     lbl_input.Text = "0"
  251.                 End If
  252.             End If
  253.         End If
  254.     End Sub
  255. #End Region
  256.  
  257. #Region "Helpers"
  258.     Private Sub CalculateTotals()
  259.         num2 = CDbl(lbl_input.Text)
  260.         Select Case calcFunction
  261.             Case "Add"
  262.                 num1 = num1 + num2
  263.             Case "Substract"
  264.                 num1 = num1 - num2
  265.             Case "Divide"
  266.                 num1 = num1 / num2
  267.             Case "Multiply"
  268.                 num1 = num1 * num2
  269.             Case "PowerOf"
  270.                 num1 = System.Math.Pow(num1, num2)
  271.         End Select
  272.         lbl_input.Text = CStr(num1)
  273.         inputStatus = True
  274.     End Sub
  275.  
  276.  
  277. #End Region
  278. End Class
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement