![]() |
Komponenten Eigenschaften zusammenfassen
Hallo,
ich arbeite momentan mit TabSheets, will jedoch nicht immer schreiben, welche gerade sichtbar oder unsichtbar sein sollen, weil sich auch noch viel ändern kann/könnte. Gibt es so etwas in der Art:
Delphi-Quellcode:
Kann man die Eigenschaften zusammenfassen, um nicht soviel zu schreiben?
// einmalige Deklaration:
1: TabSheet1.Visible := true + TabSheet1.TabVisible := true; 2: TabSheet2.Visible := true + TabSheet2.TabVisible := true; 3: TabSheet3.Visible := true + TabSheet2.TabVisible := true; 4: TabSheet4.Visible := true + TabSheet2.TabVisible := true; 1: TabSheet1.Visible := false + TabSheet1.TabVisible := false; 2: TabSheet2.Visible := false + TabSheet2.TabVisible := false; 3: TabSheet3.Visible := false + TabSheet2.TabVisible := false; 4: TabSheet4.Visible := false + TabSheet2.TabVisible := false; procedure ... begin // sichtbar sollen gerade sein: Tabsheets.Visible := 1,2; // der Rest ist unsichtbar! Hoffe, Ihr habt eine Lösung und versteht mein Problem! |
Re: Komponenten Eigenschaften zusammenfassen
Was soll die Zuweisung bringen?
|
Re: Komponenten Eigenschaften zusammenfassen
Nichts! Soll nur verdeutlichen, wie ich es mir dachte, wie es gehen könnte!
|
Re: Komponenten Eigenschaften zusammenfassen
Zitat:
Zitat:
Also: Du willst eine Funktion, die nur die TabSheets eines PageControls anzeigt, deren Index du als Parameter übergibst? Dann: Funktion mit einem Parameter vom Typ Array of Integer und dann in der Funktion alle TabSheets durchgehen und Visible auf True setzen, wenn der Index in der Liste steht, andernfalls auf False. :wink: |
Re: Komponenten Eigenschaften zusammenfassen
Hallo julchen,
kannst du mit Mengen in Delphi umgehen?
Delphi-Quellcode:
Gruß Hawkeye
type
TByteSet = set of Byte; type TForm1 = class(TForm) [..] private procedure SetVisibleTabs (const aVisible : TByteSet); end; procedure TForm1.SetVisibleTabs (const aVisible : TByteSet); begin TabSheet1.TabVisible := 1 in aVisible; TabSheet2.TabVisible := 2 in aVisible; TabSheet3.TabVisible := 3 in aVisible; TabSheet4.TabVisible := 4 in aVisible; // hier erweitern, falls es mehr Tabs gibt end; procedure TForm1.Button1Click (Sender: TObject); begin SetVisibleTabs ([2, 3]); // nur Tabs 2 und 3 sind sichtbar end; |
Re: Komponenten Eigenschaften zusammenfassen
Zitat:
|
Re: Komponenten Eigenschaften zusammenfassen
Was für eine Schleife? FindComponent? Davon würde ich abraten, da dies bereits intern eine Schleife benutzt und somit die Performance in den Keller geht.
|
Re: Komponenten Eigenschaften zusammenfassen
Zitat:
|
Re: Komponenten Eigenschaften zusammenfassen
Achja, stimmt, dann hast Du natürlich Recht. :roll:
|
Re: Komponenten Eigenschaften zusammenfassen
Zitat:
Das ist genau das, was ich gebraucht habe! Ich wusste nicht, dass die Menge das Zauberwort für solche Probleme ist! Mit vielen Grüssen, Julchen |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:02 Uhr. |
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