Zum Hauptinhalt springen

ChangedTrigger

ChangedTrigger

Steuerungsflags der Eigenschaft Changed und ChangedChild

Details

Mit dieser Eigenschaft wird das Auftreten der Ereignisse EvtChanged / EvtChangedChild und das Verhalten der Eigenschaften Changed / ChangedChild gesteuert.

Ist keine der möglichen Optionen gesetzt, erfolgt das Ereignis EvtChanged sobald der Benutzer eine Eingabe in einem Eingabe-Objekt tätigt. Wird zum Beispiel ein vier-buchstabiges Wort in ein Edit -Objekt eingetragen, erfolgt das Ereignis vier mal. Die Eigenschaft Changed des Objektes wird, bevor das Objekt den Fokus erhält, auf false gesetzt. Nach der ersten Änderung durch eine Eingabe über Tastatur, wird die Eigenschaft auf true gesetzt. Die Eigenschaft bleibt solange erhalten, bis der Eingabefokus das Objekt verlassen hat. Die Eigenschaft kann im Ereignis EvtFocusTerm ausgewertet werden.

In der Eigenschaft ChangedTrigger können folgende Optionen gesetzt werden:

  • _WinChgTriggerCaption Ist dieses Flag gesetzt, wird die Eigenschaft Changed auch dann gesetzt, wenn der Inhalt des Eingabeobjektes durch Änderung der entsprechenden Caption-Eigenschaft oder beim Checkbox -Objekt durch Änderung der CheckState-Eigenschaft verändert wurde. Ist dieses Flag gesetzt wird ebenfalls das Ereignis EvtChanged ausgelöst.
  • _WinChgTriggerFldBuf Ist dieses Flag gesetzt, wird die Eigenschaft Changed auch dann gesetzt, wenn der Inhalt der Feldpuffer in das Eingabeobjekt übertragen wurde. Dies erfolgt nur, wenn in der Eigenschaft DbFieldName ein gültiges Datenbankfeld eingetragen ist. Ist dieses Flag gesetzt, wird ebenfalls das Ereignis EvtChanged ausgelöst. Die Übertragung des Inhaltes der Feldpuffer in das Eingabeobjekt erfolgt, wenn das Objekt den Eingabefokus erhält, der Befehl WinUpdate () mit dem Parameter _WinUpdFld2Obj ausgeführt wird oder über das Objekt RecNavigator ein neuer Datensatz gelesen wird.
  • _WinChgTriggerNoEvent Ist dieses Flag gesetzt, wird das Ereignis EvtChanged nicht ausgelöst.
  • _WinChgTriggerChild Ist dieses Flag gesetzt, wird nach dem Ereignis EvtChanged des Eingabe-Objekts das Ereignis EvtChangedChild des übergeordneten Fenster-Objekts ausgelöst. Dabei wird ebenfalls die Eigenschaft ChangedChild bei dem Fenster-Objekt gesetzt. Welche Änderungen im Objekt das Ereignis auslösen, wird durch die anderen Ausprägungen definiert.

Die Optionen können wie folgt überprüft und gesetzt werden:

// Option auswerten:
if (tFrame->wpChangedTrigger & _WinChgTriggerCaption > 0)
{
...
}

// Flag setzen
tFrame->wpChangedTrigger # tFrame->wpChangedTrigger | _WinChgTriggerCaption;

// Flag zurücksetzen
tFrame->wpChangedTrigger # tFrame->wpChangedTrigger & ~_WinChgTriggerCaption;