Autor |
Beitrag |
24karatboy
      
Beiträge: 110
Win XP
Delphi (Delphi Win32)
|
Verfasst: Di 26.06.07 10:03
Guten Morgen!
ich habe nen taschenrechner programmiert mit einem edit und vielen buttons +,-,= etc.
jetzt möchte ich z.B wenn man im ersten edit 15 eingegeben hat das er das in nen hilfserg speichert und wenn ich dann auf + drücke und eine nächste zahl eingebe und dann auf gleich drücke das der dann macht
Delphi-Quelltext 1:
| edit2.Text:=hilfserg+' + '+edit1.text; |
wenn ich dann aber weiter rechne sagen wir mal ich hab vorher 55+12 gemacht dann steht in edit2 55 + 12 und in edit1 67 nach dem ich auf gleich gedrückt habe drücke ich jetzt wieder auf plus wird 67 in hilferg gespeichert und wenn ich dann 20 eingebe und auf = drücke steht in edit2 67 + 20 was ich aber eigentlich wollte:
es soll einstatt erstmal 55 + 12 und dann 67 + 20 soll da drinne stehen 55 + 12 + 20
jemand in irgendeiner weisse nen paar denkanstösse ?
ps.: konnte heute nicht schlafen weil mir dieses problem denn kopf zerstört hat 
|
|
LowSkills
      
Beiträge: 111
Windows XP
Delphi 6 Professional
|
Verfasst: Di 26.06.07 10:16
[edit]
Ich hornochse, dass steht ja schon so da...
[/edit]
Lass dir doch nen string übergeben. So als zusatz.
da steht dann halt der "Rechenweg" drin..
Delphi-Quelltext 1: 2: 3: 4:
| var Rechenweg : string; begin Rechenweg:= Rechenweg+' + '+IntToStr(Edit1.Text); end; |
So kannste denk ich mal den Rechenweg anzeigen lassen, falls das das ist was du willst.
_________________ Verstand ist eines der am besten verteilten Güter. Jeder denkt, er hätte genug davon.
Kein Problem widersteht lange dem Angriff beharrlichen Denkens.
|
|
FiceGoesDelphi
      
Beiträge: 485
Win XP Prof
Delphi 2006
|
Verfasst: Di 26.06.07 10:19
Du sagst ihm er soll bei drücken auf Plus den Inhalt von Edit1 ins Hilfserg reinspeichern.
Du gibst das Ergebnis aber auch in Edit1 wieder.
Das kann dann nicht funktionieren!
Gib das Ergebniss doch in einem anderen Edit wieder. Vllt hilft dir das!
Sry habe hier gerade viel zu tun und kann mich daher nicht tiefergehend mit deinem problem auseinander setzen!
_________________ <(^^<) <(^^)> (>^^)>
===================
|
|
Narses
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: Di 26.06.07 10:20
Moin!
Schau mal hier, da ist der Taschenrechner mal ganz anders aufgezogen; vielleicht ist das ja was für dich.
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
LowSkills
      
Beiträge: 111
Windows XP
Delphi 6 Professional
|
Verfasst: Di 26.06.07 10:32
neuer anlauf...
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:
| var Rechenweg : string; Ergebnis, Eingabe: integer; begin if not Edit1.Text = '' then begin Zahl:=StrToInt(Edit1.Text); Rechenweg:=IntToStr(Zahl); Edit1.clear; end else showmessage('Sie sollten vielleicht erst eine Zahl eingeben, bevor Sie rechnen wollen...');
if not Edit1.Text = '' then begin Eingabe:=StrToInt(Edit1.Text); Zahl:=Zahl+StrToInt(Edit1.Text); Edit1.Text:=StrToInt(Zahl); Rechenweg:=Rechenweg+' + '+inttostr(Eingabe); Edit2.Text:=Rechenweg; end else ShowMessage('Bitte geben Sie eine Zahl ein'); end; |
trägst du jetzt 1 in ed1 ein, wird Zahl1, ed1 wird geleert, zweite eingabe wird erwartet.
gibts du dann in ed1 5 ein, ist zahl = 6 und wird in ed1 so ausgegeben. In ed2 steht dann der Rechenweg, nähmlich "1 + 5"
Müsste so funktionieren.
_________________ Verstand ist eines der am besten verteilten Güter. Jeder denkt, er hätte genug davon.
Kein Problem widersteht lange dem Angriff beharrlichen Denkens.
|
|
24karatboy 
      
Beiträge: 110
Win XP
Delphi (Delphi Win32)
|
Verfasst: Di 26.06.07 10:35
ähm sorry aber bis jetzt haben mir die antworten noch nicht wirklich geholfen ich habs auch mal probiert in dem ich direkt die zahl beim + übergeben habe aber war auch nicht so wie ich mir das vorgestellt habe.
plus drücken:
edit2.text:=edit2.text+' + '+edit1.text
aber ich meine das hat nicht das richtige ergebnis erzielt
und noch ein edit möchte ich eher weniger weil dann wird alles ziemlich unübersichtlich
mfg
|
|
24karatboy 
      
Beiträge: 110
Win XP
Delphi (Delphi Win32)
|
Verfasst: Di 26.06.07 10:39
ich stelle euch mal meinen quellcode und die exe hier rein ich bitte um feedback
Einloggen, um Attachments anzusehen!
|
|
LowSkills
      
Beiträge: 111
Windows XP
Delphi 6 Professional
|
Verfasst: Di 26.06.07 10:47
Gibts da auch ein Handbuch zu?
Edit1 ist oben, nehm ich mal an. Da trage ich "1" ein, drücke Plus, Meldung: Sie müssen schon was eingeben"...
Edit2 ist readOnly?
Ich hab es also noch nicht mal bis 1 + 1 gebracht... 
_________________ Verstand ist eines der am besten verteilten Güter. Jeder denkt, er hätte genug davon.
Kein Problem widersteht lange dem Angriff beharrlichen Denkens.
|
|
24karatboy 
      
Beiträge: 110
Win XP
Delphi (Delphi Win32)
|
Verfasst: Di 26.06.07 10:49
das obere edit ist edit2 und es ist nicht zur eingabe gedacht nur das edit1 und da ist atm nur ne eingabe über die buttons möglich
|
|
LowSkills
      
Beiträge: 111
Windows XP
Delphi 6 Professional
|
Verfasst: Di 26.06.07 10:57
achso *schäm*
OK, das bringt schonmal klarheit.
Kannste hier nur mal den Auszug posten, der für Edit 2 zuständig ist? (+ varibalen)
Hab hier nähmlich weder rar noch delphi...
Dann kann ich dir u. U. helfen.
mfG
_________________ Verstand ist eines der am besten verteilten Güter. Jeder denkt, er hätte genug davon.
Kein Problem widersteht lange dem Angriff beharrlichen Denkens.
|
|
24karatboy 
      
Beiträge: 110
Win XP
Delphi (Delphi Win32)
|
Verfasst: Di 26.06.07 11:03
ich weiss nicht ob ich das richtig verstanden habe aber ich poste dir mal alles was mit edit2 zutun hat  aber nur pseudocode bzw. schon delphi code aber einfach an einander gereiht ohne ordnung
Delphi-Quelltext 1: 2: 3:
| hilfserg:=edit1.Text; edit2.Text:=edit2.text+hilfserg+' + '+edit1.text; |
mfg
|
|
Tilo
      
Beiträge: 1098
Erhaltene Danke: 13
Win7 geg. WInXP oder sogar Win98
Rad2007
|
Verfasst: Di 26.06.07 11:04
|
|
24karatboy 
      
Beiträge: 110
Win XP
Delphi (Delphi Win32)
|
Verfasst: Di 26.06.07 11:07
tilo danke das du dich bemüht hast mir zu helfen aber die rechnungen funzen wunderbar geh mal nach oben und les bitte einmal evtl. weisste dann besser wo das problem liegt. danke
mfg
|
|
LowSkills
      
Beiträge: 111
Windows XP
Delphi 6 Professional
|
Verfasst: Di 26.06.07 11:21
_________________ Verstand ist eines der am besten verteilten Güter. Jeder denkt, er hätte genug davon.
Kein Problem widersteht lange dem Angriff beharrlichen Denkens.
|
|
24karatboy 
      
Beiträge: 110
Win XP
Delphi (Delphi Win32)
|
Verfasst: Di 26.06.07 11:26
im hilfserg wird ja die zuerst eingegebene zahl gespeichert und in edit1.text steht ja die 2. zahl wenn man auf = drückt.
und ich will halt in edit2.text sehen was ich gerechnet habe und wenn ich das hilfserg weg lasse dann fehlt mir ja die erste zahl
|
|
LowSkills
      
Beiträge: 111
Windows XP
Delphi 6 Professional
|
Verfasst: Di 26.06.07 11:58
OK, nochmal ein schuss ins blaue:
Ich gebe 2 ein, drücke +, geb nochmal 2 ein, in ed1 steht das ergebnis, =4, das zugleich als hilfserg übergeben wird. In ed2 steht 2 + 2. Bis dahin ist ja alles soweit gut.
Dann drücke ich nochmal + und gebe 5 ein, das ergebnis wird richtigerweise als 9 ermittelt. in ed2 steht jetzt 2 + 24 + 5.
Das heist das das hilfsergebnis überflüssigerweise in deinem Rechenweg erscheint, oder nicht?
Wenn ich 2 + 2 rechne, ist hilfserg = 4, ed1=4, ed2 = 2 + 2.
Dann rechne ich + 5, im ed2 soll aber nicht das ergebnis, sondern der rechenweg stehen.
So wie ich das sehe, MUSST du das hilfserg. rausnehmen. Nur so kommst du zu ed2 = 2 + 2 + 5...
_________________ Verstand ist eines der am besten verteilten Güter. Jeder denkt, er hätte genug davon.
Kein Problem widersteht lange dem Angriff beharrlichen Denkens.
|
|
24karatboy 
      
Beiträge: 110
Win XP
Delphi (Delphi Win32)
|
Verfasst: Di 26.06.07 12:09
schon ein bisschen näher aber noch nicht ganz
noch einmal das prinzip so wie du das gesagt hast habs gerade mal probiert steht wenn ich 2+5 rechne +5 im ed2 es soll ja 2 + 5 dort stehen
wenn ich ne zahl eingebe und auf + drücke dann wird das was in edit1 steht als string an hilfserg weitergegeben und dann gebe ich ne 2. zahl ein und drücke auf gleich und dann soll der die 2. zahl anhängen und vorher gucken welche operation gewählt wurde das heisst wenn vorher + gedrückt wurde sollte jetzt
hilferg:=2; edit1.text:=5
edit2.text:=hilferg+' + '+edit1.text;
edit2.text:='2'+' + '+'5';
evtl. ist es dir jetzt deutlicher geworden
mfg
|
|
ZeitGeist87
      
Beiträge: 1593
Erhaltene Danke: 20
Win95-Win10
Delphi 10 Seattle, Rad Studio 2007, Delphi 7 Prof., C++, WSH, Turbo Pascal, PHP, Delphi X2
|
Verfasst: Di 26.06.07 12:20
Was ist denn so kompliziert??
Delphi-Quelltext 1: 2:
| edit2.text:= edit2.text + |
LG
Stefan
_________________ Wer Provokationen, Ironie, Sarkasmus oder Zynismus herauslesen kann soll sie ignorieren um den Inhalt meiner Beiträge ungetrübt erfassen zu können.
|
|
24karatboy 
      
Beiträge: 110
Win XP
Delphi (Delphi Win32)
|
Verfasst: Di 26.06.07 12:25
aber echt ? wieso nicht so einfach ^^ und ich werkel hier rum und schaue wie ich das machen könnte ...
danke
mfg
|
|
LowSkills
      
Beiträge: 111
Windows XP
Delphi 6 Professional
|
Verfasst: Di 26.06.07 13:12
Danke Zeitgeist, jetzt hast du mir den Auftritt vermasselt
BTW: Du hast bei dem Rechner so ne Uhr drin, jetzt frag ich mal was:
Wie geht das?
Ach ja: Schön, dass es jetzt funzt.
mfG
_________________ Verstand ist eines der am besten verteilten Güter. Jeder denkt, er hätte genug davon.
Kein Problem widersteht lange dem Angriff beharrlichen Denkens.
|
|