Probleme bei Dialog basierender MFC Anwendung
-
CString puffer2; CString puffer; CString Operand1; CString Operand2; CString Rechenoperation; double Ergebnis;
Also die Variablen sind eigentlich deklariert!
Ich muss dazu sagen, dass ich absoluter Anfänger in C++ bin!
-
Irgendwo ÜBER den 15 Funktionen hast du eine } vergessen.
-
zeig mal deine Header-Datei zum Dialog
-
LittleT schrieb:
c:\Test\Projects\Calculator\CalculatorDlg.cpp(249): error C2601: 'CCalculatorDlg::OnBnClicked1' : local function definitions are illegal
Der Compiler ist offenbar der Meinung, dass diese Methode innerhalb einer anderen steht. Vielleicht fehlt bei der darüber stehenden Funktion einfach nur eine schließende geschweifte Klammer.
-
Wieso ist das UpdateData(FALSE) dort nicht nötig?
Dachte das ist zum Aktualisieren der Daten (Auf die Oberfläche schreiben und Werte von der Oberfläche zur MemberVariablen)
Sollte man das dann nicht nach Verwendung wieder "schliessen"?
-
Verdammt seit ihr gut!
Genau des war der Fehler!
Hatte bei einer Funktion die abschliessende Klammer vergessen!Vielen Dank allen!
-
LittleT schrieb:
Verdammt seit ihr gut!
seid
LittleT schrieb:
Wieso ist das UpdateData(FALSE) dort nicht nötig?
Dachte das ist zum Aktualisieren der Daten (Auf die Oberfläche schreiben und Werte von der Oberfläche zur MemberVariablen)Eben. Da du hier aber m_Anzeige nicht änderst, braucht der Wert auch nicht auf die Oberfläche zurückgeschrieben zu werden.
Sollte man das dann nicht nach Verwendung wieder "schliessen"?
UpdateData muss nicht automatisch paarweise auftreten. Da ist schon ein wenig Denkeinsatz gefragt.
-
LittleT schrieb:
Sollte man das dann nicht nach Verwendung wieder "schliessen"?
UpdateData muss nicht paarweise auftreten - es kann aber.
UpdateData(TRUE): Daten von den Controls in die Variablen (speichern)
UpdateData(FALSE): Daten von den Variablen in die Controls (anzeigen)
-
Verdammt seit ihr gut!
Genau des war der Fehler!
Hatte bei einer Funktion die abschliessende Klammer vergessen!Vielen Dank allen!
-
und zumindest in der Methode kannst dir auch die Puffer sparen, kannst gleich in der Set-Methode deine m_... + "l" schreiben, das geht auch
-
Das heißt, dass ich das UpdateData(TRUE) benötige, denn ich hole die Daten aus der Oberfläche, aber nachdem ich nichts zurückschicke brauche ich das UpdateData(FALSE) nicht!
Das hab ich jetzt kapiert!Eine Frage hätte ich noch:
Wenn ich mit meinem Übungsprojekt fertig bin, dürfte ich dann jemanden von Euch den Quelltext schicken?
ich denke einfach dass erfahrene Programmierer die Hände über den Kopf zusammenschlagen würden wenn sie das sehen was ich programmiert hab!Vielleicht könnte mir dann jemand Tipps geben wie ich dies und das eleganter und besser lösen könnte!
meine E-Mail lautet:
rainer.toigo@freenet.deEinfach schreiben, falls interesse besteht
-
LittleT schrieb:
ich denke einfach dass erfahrene Programmierer die Hände über den Kopf zusammenschlagen würden wenn sie das sehen was ich programmiert hab!
Das werden sie mit Sicherheit - ist bei jedem Anfänger so.
Aber eigentlich ist es besser, wenn du dir nach und nach deinen eigenen Stil zurechtlegst.