Simple Calculator, can Add, Subtract, Multiply, and Divide,
But only 2 Numbers at a time...
Code:
FirstNumber := 1
Gui, Add, Button, x16 y60 w30 h20 +Button g1, 1
Gui, Add, Button, x56 y60 w30 h20 +Button g2, 2
Gui, Add, Button, x96 y60 w30 h20 +Button g3, 3
Gui, Add, Button, x96 y120 w30 h20 +Button g9, 9
Gui, Add, Button, x16 y90 w30 h20 +Button g4, 4
Gui, Add, Button, x56 y90 w30 h20 +Button g5, 5
Gui, Add, Button, x96 y90 w30 h20 +Button g6, 6
Gui, Add, Button, x16 y120 w30 h20 +Button g7, 7
Gui, Add, Button, x56 y120 w30 h20 +Button g8, 8
Gui, Add, Button, x212 y67 w0 h46 +Button gAdd, Add
Gui, Add, Button, x16 y150 w30 h20 +Button g0, 0
Gui, Add, Button, x56 y150 w30 h20 +Button gDot, .
Gui, Add, Button, x96 y150 w30 h20 +Button gEquals, =
Gui, Add, Button, x146 y60 w50 h20 +Button gDivide, Divide
Gui, Add, Button, x146 y90 w50 h20 +Button gMultiply, Multiply
Gui, Add, Button, x146 y120 w50 h20 +Button gSubtract, Subtract
Gui, Add, Button, x146 y150 w50 h20 +Button gAdd, Add
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right, %Numbers1%
Gui, Show, w218 h190, Calculator
Return
1:
If FirstNumber = 1
{
FileAppend, 1, %A_WorkingDir%\CalcNumbers.txt
FileRead, Numbers1, %A_WorkingDir%\CalcNumbers.txt
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right, %Numbers1%
Return
}
Else
{
FileAppend, 1, %A_WorkingDir%\CalcNumbers2.txt
FileRead, Numbers2, %A_WorkingDir%\CalcNumbers2.txt
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right, %Numbers2%
Return
}
2:
If FirstNumber = 1
{
FileAppend, 2, %A_WorkingDir%\CalcNumbers.txt
FileRead, Numbers1, %A_WorkingDir%\CalcNumbers.txt
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right, %Numbers1%
Return
}
Else
{
FileAppend, 2, %A_WorkingDir%\CalcNumbers2.txt
FileRead, Numbers2, %A_WorkingDir%\CalcNumbers2.txt
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right, %Numbers2%
Return
}
3:
If FirstNumber = 1
{
FileAppend, 3, %A_WorkingDir%\CalcNumbers.txt
FileRead, Numbers1, %A_WorkingDir%\CalcNumbers.txt
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right, %Numbers1%
Return
}
Else
{
FileAppend, 3, %A_WorkingDir%\CalcNumbers2.txt
FileRead, Numbers2, %A_WorkingDir%\CalcNumbers2.txt
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right, %Numbers2%
Return
}
4:
If FirstNumber = 1
{
FileAppend, 4, %A_WorkingDir%\CalcNumbers.txt
FileRead, Numbers1, %A_WorkingDir%\CalcNumbers.txt
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right, %Numbers1%
Return
}
Else
{
FileAppend, 4, %A_WorkingDir%\CalcNumbers2.txt
FileRead, Numbers2, %A_WorkingDir%\CalcNumbers2.txt
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right, %Numbers2%
Return
}
5:
If FirstNumber = 1
{
FileAppend, 5, %A_WorkingDir%\CalcNumbers.txt
FileRead, Numbers1, %A_WorkingDir%\CalcNumbers.txt
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right, %Numbers1%
Return
}
Else
{
FileAppend, 5, %A_WorkingDir%\CalcNumbers2.txt
FileRead, Numbers2, %A_WorkingDir%\CalcNumbers2.txt
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right, %Numbers2%
Return
}
6:
If FirstNumber = 1
{
FileAppend, 6, %A_WorkingDir%\CalcNumbers.txt
FileRead, Numbers1, %A_WorkingDir%\CalcNumbers.txt
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right, %Numbers1%
Return
}
Else
{
FileAppend, 6, %A_WorkingDir%\CalcNumbers2.txt
FileRead, Numbers2, %A_WorkingDir%\CalcNumbers2.txt
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right, %Numbers2%
Return
}
7:
If FirstNumber = 1
{
FileAppend, 7, %A_WorkingDir%\CalcNumbers.txt
FileRead, Numbers1, %A_WorkingDir%\CalcNumbers.txt
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right, %Numbers1%
Return
}
Else
{
FileAppend, 7, %A_WorkingDir%\CalcNumbers2.txt
FileRead, Numbers2, %A_WorkingDir%\CalcNumbers2.txt
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right, %Numbers2%
Return
}
8:
If FirstNumber = 1
{
FileAppend, 8, %A_WorkingDir%\CalcNumbers.txt
FileRead, Numbers1, %A_WorkingDir%\CalcNumbers.txt
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right, %Numbers1%
Return
}
Else
{
FileAppend, 8, %A_WorkingDir%\CalcNumbers2.txt
FileRead, Numbers2, %A_WorkingDir%\CalcNumbers2.txt
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right, %Numbers2%
Return
}
9:
If FirstNumber = 1
{
FileAppend, 9, %A_WorkingDir%\CalcNumbers.txt
FileRead, Numbers1, %A_WorkingDir%\CalcNumbers.txt
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right, %Numbers1%
Return
}
Else
{
FileAppend, 9, %A_WorkingDir%\CalcNumbers2.txt
FileRead, Numbers2, %A_WorkingDir%\CalcNumbers2.txt
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right, %Numbers2%
Return
}
0:
If FirstNumber = 1
{
FileAppend, 0, %A_WorkingDir%\CalcNumbers.txt
FileRead, Numbers1, %A_WorkingDir%\CalcNumbers.txt
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right, %Numbers1%
Return
}
Else
{
FileAppend, 0, %A_WorkingDir%\CalcNumbers2.txt
FileRead, Numbers2, %A_WorkingDir%\CalcNumbers2.txt
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right, %Numbers2%
Return
}
Dot:
If FirstNumber = 1
{
FileAppend, ., %A_WorkingDir%\CalcNumbers.txt
FileRead, Numbers1, %A_WorkingDir%\CalcNumbers.txt
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right, %Numbers1%
Return
}
Else
{
FileAppend, ., %A_WorkingDir%\CalcNumbers2.txt
FileRead, Numbers2, %A_WorkingDir%\CalcNumbers2.txt
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right, %Numbers2%
Return
}
Divide:
Control, Disable,, Button14
Control, Disable,, Button15
Control, Disable,, Button16
Control, Disable,, Button17
MathCommand = Div
FirstNumber := 0
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right,
Return
Multiply:
Control, Disable,, Button14
Control, Disable,, Button15
Control, Disable,, Button16
Control, Disable,, Button17
MathCommand = Mult
FirstNumber := 0
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right,
Return
Subtract:
Control, Disable,, Button14
Control, Disable,, Button15
Control, Disable,, Button16
Control, Disable,, Button17
MathCommand = Sub
FirstNumber := 0
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right,
Return
Add:
Control, Disable,, Button14
Control, Disable,, Button15
Control, Disable,, Button16
Control, Disable,, Button17
MathCommand = Add
FirstNumber := 0
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right,
Return
Equals:
{
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right,
FileRead, NumbersEqual1, %A_WorkingDir%\CalcNumbers.txt
FileRead, NumbersEqual2, %A_WorkingDir%\CalcNumbers2.txt
Control, Enable,, Button14
Control, Enable,, Button15
Control, Enable,, Button16
Control, Enable,, Button17
If MathCommand = Div
{
EnvDiv, NumbersEqual1, %NumbersEqual2%
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right, %NumbersEqual1%
FirstNumber := 1
FileDelete, %A_WorkingDir%\CalcNumbers.txt
FileDelete, %A_WorkingDir%\CalcNumbers2.txt
Return
}
If MathCommand = Mult
{
EnvMult, NumbersEqual1, %NumbersEqual2%
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right, %NumbersEqual1%
FirstNumber := 1
FileDelete, %A_WorkingDir%\CalcNumbers.txt
FileDelete, %A_WorkingDir%\CalcNumbers2.txt
Return
}
If MathCommand = Sub
{
EnvSub, NumbersEqual1, %NumbersEqual2%
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right, %NumbersEqual1%
FirstNumber := 1
FileDelete, %A_WorkingDir%\CalcNumbers.txt
FileDelete, %A_WorkingDir%\CalcNumbers2.txt
Return
}
If MathCommand = Add
{
EnvAdd, NumbersEqual1, %NumbersEqual2%
Gui, Add, Edit, x16 y20 w180 h20 ReadOnly +Right, %NumbersEqual1%
FirstNumber := 1
FileDelete, %A_WorkingDir%\CalcNumbers.txt
FileDelete, %A_WorkingDir%\CalcNumbers2.txt
Return
}
}
GuiClose:
FileDelete, %A_WorkingDir%\CalcNumbers.txt
FileDelete, %A_WorkingDir%\CalcNumbers2.txt
ExitApp
Return