Seite 1 von 1

Änderung eines Controls feststellen

Verfasst: 11. Juni 2014, 12:28
von Magic
Hi,

stehe gerade etwas auf’m Schlauch.

Es gibt sicherlich ein/e Befehl / Funktion / Eigenschaf mit der ich feststellen kann ob sich der Inhalt eines Controls (EDT_XXX) der zuvor per FileToScreen() gefüllt worden ist, geändert hat. Heißt in meinem konkreten Fall, ob der Benutzer etwas geändert hat.

Ich kann momentan nichts finden. Zur Not würde ich den originalen Inhalt in Variable speichern und die dann mit dem Inhalt der Controls vergleichen, aber ich kann mir nicht vorstellen, dass es etwas Derartiges nicht gibt.

Re: Änderung eines Controls feststellen

Verfasst: 12. Juni 2014, 11:51
von Herbert
Hallo Magic

Die Property ..Modified sollte dir helfen!

Re: Änderung eines Controls feststellen

Verfasst: 16. Juni 2014, 12:38
von Magic
Danke, das ist das was ich gesucht habe.

Leider komme ich nicht drum herum den vorherigen Wert zwischen zu speichern denn, ..Modified gibt auch dann TRUE wenn das Editierfeld am Ende des Editierens den gleichen Inhalt hat wie vorher. Er merkt eben nur, dass Editiert wurde.

Re: Änderung eines Controls feststellen

Verfasst: 26. Juni 2014, 07:23
von BRANDELH
das ist bei allen controls so (auch bei Xbase++) ;-)

Re: Änderung eines Controls feststellen

Verfasst: 30. Juni 2014, 09:34
von Herbert
Nein, Hubert, das ist ein Bug in Xbase.
Ein ..Modified wird erst wahr, wenn der User hineingeklickt hat und geändert hat.
..modified wird natürlich true, auch wenn die Aenderung inhaltlich nichts anderes darstellt.

Re: Änderung eines Controls feststellen

Verfasst: 30. Juni 2014, 19:07
von Wolfgang Ciriack
Warum soll denn ein modified=.T. geliefert werden, wenn inhaltlich nichts geändert wurde ???
Das ist mir doch dann eher ein "Feature" und kein "Bug". Und m.E. ein besseres "Feature".

Re: Änderung eines Controls feststellen

Verfasst: 1. Juli 2014, 10:47
von BRANDELH
Herbert hat geschrieben:Nein, Hubert, das ist ein Bug in Xbase.
Ein ..Modified wird erst wahr, wenn der User hineingeklickt hat und geändert hat.
..modified wird natürlich true, auch wenn die Aenderung inhaltlich nichts anderes darstellt.
Herbert,

ich habe doch nichts anderes gesagt, als dass ein Control nach einem Tastendruck
auf Modified = .t. steht, obwohl der Inhalt z.B. durch Löschen wieder auf den alten Wert gesetzt wurde !

Hast du mich falsch verstanden, oder sollte ich mich da irren ?

Windows bemerkt nur, dass der EditBuffer geändert wurde, aber prüft nicht nachträglich ob der alte Zustand wieder hergestellt wurde (außer mit RESET)