rajiv sharma
Posts: 4
Nickname: rajsonu
Registered: Feb, 2006
|
|
Re: code for windows calculator using vb.net
|
Posted: Feb 27, 2006 7:36 AM
|
|
Public Class CalcPad Inherits System.Windows.Forms.UserControl
#Region " Windows Form Designer generated code "
Private Accum As Double Private PendingOp As String Private PendingOpFlag As Boolean
Property DisplayValue() As String Get Return CalcPadDisplay.Text End Get Set(ByVal Value As String) End Set End Property
Private Sub CalcPad_Load( _ ByVal sender As Object, _ ByVal e As System.EventArgs) _ Handles MyBase.Load PendingOp = "Null" PendingOpFlag = False Accum = 0 End Sub
Private Sub op( _ ByVal sender As System.Object, _ ByVal e As System.EventArgs) _ Handles opplus.Click, opminus.Click, _ opdivide.Click, opmult.Click Dim DisplayValue As Double DisplayValue = CDec(CalcPadDisplay.Text) If Accum = 0 Then Accum = DisplayValue Else Accum = AccumCalc(PendingOp) CalcPadDisplay.Text = CStr(Accum) End If PendingOp = sender.tag PendingOpFlag = True End Sub
Private Sub opequals_Click( _ ByVal sender As Object, _ ByVal e As System.EventArgs) _ Handles opequals.Click CalcPadDisplay.BackColor = Color.White If PendingOp <> "Null" Then Accum = AccumCalc(PendingOp) CalcPadDisplay.Text = Accum PendingOp = "Null" PendingOpFlag = True Accum = 0 End If End Sub
Private Sub opclear_Click( _ ByVal sender As Object, _ ByVal e As System.EventArgs) _ Handles opclear.Click CalcPadDisplay.BackColor = Color.White CalcPadDisplay.Text = "0" PendingOp = "Null" Accum = 0 End Sub
Private Sub opclearentry_Click( _ ByVal sender As System.Object, _ ByVal e As System.EventArgs) _ Handles opclearentry.Click CalcPadDisplay.BackColor = Color.White CalcPadDisplay.Text = "0" End Sub
Private Sub keyClick( _ ByVal sender As System.Object, _ ByVal e As System.EventArgs) _ Handles key1.Click, key2.Click, key3.Click, _ key4.Click, key5.Click, key6.Click, _ key7.Click, key8.Click, key9.Click, _ key0.Click, keydecimal.Click CalcPadDisplay.BackColor = Color.White If CDec(CalcPadDisplay.Text) = 0 _ Or PendingOpFlag = True Then CalcPadDisplay.Text = sender.tag PendingOpFlag = False Else CalcPadDisplay.Text &= sender.tag End If End Sub Private Function AccumCalc(ByRef opcode As String) Select Case opcode Case "Divide" If CDec(CalcPadDisplay.Text) <> 0 Then AccumCalc = _ Accum / CDbl(CalcPadDisplay.Text) Else CalcPadDisplay.BackColor = Color.Red AccumCalc = 0 PendingOp = "Null" Exit Function End If Case "Multiply" AccumCalc = Accum * CDbl(CalcPadDisplay.Text) Case "Add" AccumCalc = Accum + CDbl(CalcPadDisplay.Text) Case "Subtract" AccumCalc = Accum - CDbl(CalcPadDisplay.Text) End Select End Function End Class
|
|