Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - Problem mit Edit-Feld bei Taschenrechner-Programm


Degen87 - Do 30.11.06 16:02
Titel: Problem mit Edit-Feld bei Taschenrechner-Programm
Hallo
Ich versuche im Moment einen klassischen TAschenrechner zu programmieren.
Dazu verwende ich Delphi 6.
Das Programm soll folgendermaßen aussehen:
In ein Edit-Feld werden über eine Zehnertastatur (die aus Buttons besteht) Zahlen eingegeben. Anschliessend werden mit weiteren Buttons(+, -, :,*) Rechenaufträge erteilt. Das Ergebnis soll wiederum im Edit-Feld erscheinen.
Jetzt hab ich das Problem dass ich nicht weiß, wie man mehrer Ziffern nacheinander in
ein Edit-Feld eingibt ohne dazu die eigentliche Computertatatur zu verwenden, sondern
die im Programm integrierte. Ich hab bis jetz nur hinbekommen die Ziffer 1-9 eingeben zu können, wie geht das aber mit mehrstelligen Zahlen?

Vielen Dank
Degen87


Danny W. - Do 30.11.06 16:07

ein Edit.Text ist ja als 'Text' deklariert, das ist wiederum ein String. Also holst du dir erstmal deine Zahlen zusammen und castest diese dann später in einen integer (oder float)

'leiste' entspricht dem edit in der die zahlen stehen sollen.

Für die erste

Delphi-Quelltext
1:
leiste.text := leiste.text + '1';                    


Für die zweite

Delphi-Quelltext
1:
leiste.text := leiste.text + '2';                    


Wenn du damit rechnen willst..(als integer z.B.) machst du einfach


Delphi-Quelltext
1:
rechnen:=strtoint(leiste.text);                    


so steht dann in deiner Variable 'rechnen' der wert der oben in der leiste steht

hoffe geholfen zu haben

mfG,
Danny


Danny W. - Do 30.11.06 16:11

beste effekte erzielst du übrigens im Edit Feld mit "BidiMode=bdRightToLeft"

Das kannst du im Objektinspektor einstellen ;)


Narses - Do 30.11.06 19:56

Moin!

Ich biete mal meinen Taschenrechner [http://www.delphi-forum.de/viewtopic.php?p=398242#398242] als "Studienobjekt" an. ;)

cu
Narses