Forum: PC-Programmierung Visual Studio 2003 und UpdateData()


von Karlheinz Druschel (Gast)


Lesenswert?

Hi Leuts,

ich stehe hier vor einem Problem undkomme mir vor wie ein Idiot:
Ich habe iein Dialogfeld, mit einem EditControl. Dazu habe ich eine
UINT Memebervariable mit dem Assistenten angelegt, die DoDataExchange
wird auch aufgerufen.
Aber ich kann eingeben was ich will, nach einem UpdateData wird keine
Zahl aus dem Dialogfeld in der Membervariablen gespeichert. Die ist
immer 0.
Nach dem UpdateData habe ich eine direkte Abfrage:
if (i < 1 || i > 60
{
   ....
};
Auch diese wird übersprungen, wohl i mit dem Wert 0 ja kleiner ist als
1!!! Weil ich dachte ich hätte an dem Projekt was abgeschossen, habe
ich ein neues MFC-Projekt angelegt, das nur ein Dialogfeld hat.
Gleiches Spiel. Was ist hier los ?

Greets
Karlheinz

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Poste mal den Quelltext Deiner Dialogklasse - sowohl *.cpp als auch
*.h.

Wie rufst Du UpdateData auf?

von Tobi T. (tubbu-)


Lesenswert?

Es gibt UpdateData(0); und UpdateData(1); das eine schreibt (zub
Beispiel bei einem Textfeld) den Wert der Membervariablen in das Feld,
das Andere liest den Text im Feld und schreibt ihn in die
Membervariable.

von Rene.R (Gast)


Lesenswert?

Würd es so machen!

if ((i < 1) || (i > 60))

MFG Rene

von Karlheinz Druschel (Gast)


Lesenswert?

UpdateData(0) funktioniert genausowenig wie ein UpdateData(1).
Ich habe schon beides versucht, auch einen Wert in die Dialogbox zu
schreiben geht nicht.
Ich habe schon einige Sachem mit VC 2003 gemacht, bisher ging das immer
prima.
Vor allem ist es ein alter Sourcecode, d.h. die Funktionen haben mal
gearbeitet!!
Es muß irgenwie eine Einstellungssache sein oder so....


Greets
Karlheinz

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.