Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Tabsheetwechsel mit Bedingung verknüpfen (https://www.delphipraxis.net/158010-tabsheetwechsel-mit-bedingung-verknuepfen.html)

Bbommel 2. Feb 2011 12:25

AW: Tabsheetwechsel mit Bedingung verknüpfen
 
Zitat:

Zitat von Ykcim (Beitrag 1079056)
Aber wie kann ich abfragen, welches Tabsheet eigentlich geöffnet werden sollte?

Aus der Online-Hilfe von D2009:

Delphi-Quellcode:
procedure TForm1.PageControl1Changing(Sender: TObject; var AllowChange: Boolean);
begin
  if ((Sender as TPageControl).ActivePage = TabSheet1) then
    AllowChange := (Edit1.Text <> '')
  else
    AllowChange := True;
end;

Das sollte dir die nötigen Ansätze geben. :)

Bbommel 2. Feb 2011 12:37

AW: Tabsheetwechsel mit Bedingung verknüpfen
 
Kleiner Nachtrag:

Ganz so geht das nicht. Ich habe gerade noch was gestest:

Im OnChanging hast du noch die alten Werte für TabIndex stehen, aber weißt nicht, wo die Reise hingehen soll.

Im OnChange (ohne -ing) hast du die neuenWerte für TabIndex stehen.

Du müsstest dir also in eine zusätzliche Variable im OnChanging den alten Wert von TabIndex merken, dann im OnChange deine Prüfungen durchführen, abhängig davon, was geöffnet werden soll (also abhängig vom dann gültigen Wert von TabIndex) und dann, falls die Prüfung fehlschlägt, den alten, zwischengespeicherten Wert von TabIndex wieder zuweisen.

Bis denn
Bommel

Bummi 2. Feb 2011 12:43

AW: Tabsheetwechsel mit Bedingung verknüpfen
 
@mkinzler
er wird das Problem haben dass er das Zieltabsheet beim Klicken nicht kennt...

EDIT:
sorry Bbommel's Eintrag übersehen , mhhhh :gruebel:

Ykcim 2. Feb 2011 12:46

AW: Tabsheetwechsel mit Bedingung verknüpfen
 
@ Bummi
Genau das ist mein Problem!

@Bbommel
Das werde ich mal fix testen und melde mich dann gleich wieder!

Ykcim 2. Feb 2011 13:14

AW: Tabsheetwechsel mit Bedingung verknüpfen
 
Auf diese Weise funktionierte es. Das einzige, was ich schöner gefunden hätte, wenn der Wechsel garnicht erst erfolgen würde, statt wie jetzt erst erfolgt und dann wieder zurückgeht...
Delphi-Quellcode:
  if Listen.ActivePageIndex=4 then
    if WAAUNR.Caption='' then
      Listen.ActivePageIndex:=StartTab;
Aber das Wichtigste funktioniert erst einmal - der Rest ist Kosmetik.

Vielen Dank!!!

Ykcim


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:39 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz