Einzelnen Beitrag anzeigen

Benutzerbild von Woodman
Woodman

Registriert seit: 17. Mär 2007
74 Beiträge
 
Delphi 10.1 Berlin Starter
 
#1

Problem mit PageControl/TabSheet

  Alt 10. Jun 2009, 12:27
Hallo Wissende,

ich möchte mir ein Wizard-Like-Programm bauen und verwende dazu eine PageControl mit TabSheets.
So weit so gut.
Wo ich jetzt ein Problem mit habe, ist zu erkennen, wann ich ein TabSheet verlasse und ein anderes öffne. Die "OnShow"- und "OnHide"-Ereignisse treten nämlich in "falscher" Reihenfolge auf:
Angenommen ich bin auf TAB1 und wechsele zu TAB2, dann kommt zuerst das Ereignis "OnShow" von TAB2 und dann "OnHide" von TAB1!
Code:
Seite 2: OnShow
Seite 1: OnHide
Wenn ich nur die Reiter zum Umschalten benutze, dann würde es funktionieren, dann könnte ich die OnChanging- und OnChange-Ereignisse der PageControl benutzen:
Code:
OnChanging, Seite 1
Seite 2: OnShow
Seite 1: OnHide
OnChange, Seite 2
Wenn ich aber - wie oben schon erwähnt - das Programm Wizard-like gestalten möchte und ich wechsele die Seiten mit "Weiter" bez. "Zurück", dann treten die "OnChang*"-Ereignisse nicht auf:

Wer es selber testen möchte: Im Anhang ist ein kleines Projekt, mit dem man das Testen kann.
Auch das auftreten der Ereignisse "OnEnter" und "OnExit" der PageControl sind unlogisch - kann auch mit dem anhägenden Programm getestet werden.

Hat jemand eine Idee, wie man richtig abfangen kann, wenn eine Seite verlassen wird, bevor die nächste Seite betreten wird?
Angehängte Dateien
Dateityp: zip tabsheettest_830.zip (3,7 KB, 8x aufgerufen)
Keep
Horst
Delphi 10.1 Berlin Starter unter Windows 10 - 1803
  Mit Zitat antworten Zitat