Dickes Problem mit Update Data

ArmerIrrer

Grünschnabel
Hi Leute,

ich habe ein ziemliches problem mit der funktion UpdateData. und zwar habe ich ein dialog mit einem textfenster, in dieses sollen daten geschrieben werden, allerdings jede sekunde etwas neues!
Die daten kommen aus einer datei, also lese ich diese in einer schleife aus und jedes mal wenn ich eine zeile gelesen habe, speicher ich den inhalt in die membervariable des textfeldes und rufe UpdateData aus. Anschliessend lasse ich das programm eine sekunde schlafen und starte mit der nächsten zeile.

Das problem ist, ich bekomme nicht das ergebniss was ich erwarte, ich bekomme nur die letzte zeile! Er liesst alles wunderbar aus und so weiter, ich habe den debugger laufen lassen und alles schrittweise kontrolliert, es sollte eigentlich gehen!
Ich habe so ziehmlich alles ausprobiert aber mittlerweile keine ahnung mehr wie ich das lösen soll.
Kann es ev. an der funktion UpdateData liegen, oder dass ich durch dass dauernde aufrufen den puffer überschreibe? gibt es ev. noch eine andere möglichkeit daten aufs textfeld auszugeben?
Ich hoffe ihr habt noch anregungen für mich, denn das ganze ist ein teil eines projektes jür mein studium und der abgabetermin rückt näher...
Danke!
 
[mecker]UpdateData pfui![/mecker]

Also,

Wenn du immer nur die Zeile in die Membervariable schreibst, überschreibst du den kompletten Inhalt. Du müsstest da mit += arbeiten.

Wieso meckere ich wegen UpdateData?
UpdateData frischt natürlich nicht nur dein Textfeld auf, sonder ALLE verdammten Variablen im Dialog. Kann happig werden.

Was schlage ich vor?
Du kannst mit SetWindowText/GetWindowText den Text direkt setzen/lesen. Bedenke allerdings, es gibt kein vernünftiges Text-Anhängen. Das lässt sich nur über Rauslesen -> Strings zusammenhängen -> komplett wieder reinsetzen lösen.
Eine andere Variante: Mit SetCurSel bei der CEdit die Selektion nach dem letzten Zeichen setzen und dann mit ReplaceSelection den Text anfügen. Verschiebt natürlich den Cursor.
 
Zurück