Autor Beitrag
magic87 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 45


Delphi 7, PHP
BeitragVerfasst: Mi 23.08.06 10:30 
Sollte meinen Taschenrechner jetzt übersichtlicher mit typisierten Variablen programmieren. Habe ich auch schon bis hier gemacht. Aber irgendwie rechnet der noch nicht richtig. Kann mir da noch jemand ein Tipp geben vll? die Zahlen lassen sich so eintippen wie sie sollten. Auch wenn ich das erste mal plus gedrückt habe, und die zweite Zahl eingeben will. Klappt alles super. nur beim zweiten mal plus drücken sollte er ja das Ergebnis anzeigen. Aber wie mache ich das in meinem Fall? Bin wirklich dankbar für jeden Tipp..
..Dennis

ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
144:
145:
146:
147:
148:
149:
150:
151:
152:
153:
154:
155:
156:
157:
158:
159:
160:
161:
162:
163:
164:
165:
166:
167:
168:
169:
//Selbstdefinierter Typen

type {für Ausgabe, ZahlLöschen und eine Zahleingabe}
  TEingabemodus = (emAusgabe,emLoeschen,emZahleneingabe);

type {für die Rechenarten}
  TRechenmodus = (rmAdd,rmSub,rmMult,rmDiv);


type
  TForm1 = class(TForm)
    Edit1: TEdit;
    bt1: TButton;
    bt2: TButton;
    BtPlus: TButton;
    bt3: TButton;
    btgleich: TButton;
    btMinus: TButton;
    BtClear: TButton;
    Button1: TButton;
    Button3: TButton;
    Button2: TButton;
    Button4: TButton;
    Button5: TButton;
    Button6: TButton;
    Button7: TButton;
    Button8: TButton;
    Button9: TButton;
    MainMenu1: TMainMenu;
    Datei1: TMenuItem;
    Beenden1: TMenuItem;
    procedure bt1Click(Sender: TObject);
    procedure bt2Click(Sender: TObject);
    procedure bt3Click(Sender: TObject);
    procedure BtPlusClick(Sender: TObject);
    procedure btMinusClick(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure btgleichClick(Sender: TObject);
    procedure Beenden1Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button5Click(Sender: TObject);
    procedure Button8Click(Sender: TObject);
    procedure Button6Click(Sender: TObject);
    procedure Button9Click(Sender: TObject);
    procedure Button7Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private-Deklarationen }

    EingabeModus : TEingabeModus; {Die selbsterstellten Variablen}
    RechenModus  : TRechenModus;

    //Meine Proceduren
    procedure ZahlNeu;
    Procedure Rechenarten;
    procedure Zahlenmerken;

  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  Zahl1, Zahl2: integer;


  implementation

{$R *.dfm}

procedure TForm1.ZahlNeu;
begin
If Eingabemodus = (emLoeschen) then
  begin
  edit1.text := '';  {Bei EmLöschen wird Edit leer}
  end;
  Eingabemodus := emZahleneingabe;  {wieder normaler Eingabemodus}
end;


procedure TForm1.Zahlenmerken;  //Soll sich die Beiden Zahlen merken
begin
    if Eingabemodus = emZahleneingabe then
    Zahl1 := strToInt(Edit1.text);
    Eingabemodus := emLoeschen;

    if Eingabemodus = emZahleneingabe then
    Zahl2 := strToInt(Edit1.text);
    Eingabemodus := emLoeschen;

end;


//Zahlentasten
procedure TForm1.bt1Click(Sender: TObject);
begin
  ZahlNeu;
  edit1.text:= edit1.text + '1';
end;

procedure TForm1.bt2Click(Sender: TObject);
begin
  ZahlNeu;
  edit1.text:= edit1.text + '2';
end;

procedure TForm1.bt3Click(Sender: TObject);
begin
  ZahlNeu;
  edit1.text:= edit1.text + '3';
end;

procedure TForm1.Button4Click(Sender: TObject);
begin
  ZahlNeu;
  edit1.text:= edit1.text + '4';
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  ZahlNeu;
  edit1.text:= edit1.text + '5';
end;

procedure TForm1.Button5Click(Sender: TObject);
begin
  ZahlNeu;
  edit1.text:= edit1.text + '6';
end;

procedure TForm1.Button8Click(Sender: TObject);
begin
  ZahlNeu;
  edit1.text:= edit1.text + '7';
end;

procedure TForm1.Button6Click(Sender: TObject);
begin
  ZahlNeu;
  edit1.text:= edit1.text + '8';
end;

procedure TForm1.Button9Click(Sender: TObject);
begin
ZahlNeu;
edit1.text:= edit1.text + '9';
end;

procedure TForm1.Button7Click(Sender: TObject);
begin
ZahlNeu;
edit1.text:= edit1.text + '0';
end;
//Ende der Zahlentasten



//Plustaste
procedure TForm1.BtPlusClick(Sender: TObject);
begin
  Zahlenmerken;
  edit1.text:= IntToStr(Zahl1 + Zahl2);
end;



end.