Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Menüeinträge deaktivieren ausblenden / deaktivieren (https://www.delphipraxis.net/154963-menueeintraege-deaktivieren-ausblenden-deaktivieren.html)

Alfonso 3. Okt 2010 17:46

Menüeinträge deaktivieren ausblenden / deaktivieren
 
Hi,

ich möchte für bestimmte Anwender fast alle Menüeinträge deaktivieren bzw. verstecken.
Anstatt folgendes zu scheiben:
Code:
mnuX1.Visible:=false;
mnuX2.Visible:=false;
mnuX3.Visible:=false;
mnuX4.Visible:=false;
...
mnuX30.Visible:=false;
möchte ich über eine Schleife alle Menüs des Mainmenu ausblenden und dann vernzelt wieder einblenden.

Wie löse ich das?
Gruß
Alfonso

implementation 3. Okt 2010 17:49

AW: Menüeinträge deaktivieren ausblenden / deaktivieren
 
Ich sehe da zunächst 2 Möglichkeiten:

a) Du schmeißt die Menüpunkte in ein Array, das du dann mit der Laufvariable indizierst.

b) Du benutzt das langsame FindComponent().

Satty67 3. Okt 2010 17:53

AW: Menüeinträge deaktivieren ausblenden / deaktivieren
 
Statt Array bietet sich auch TActionList an, dann wären mit zugeordnete ToolBar-Buttons auch gleich behandelt. Gruppen sind auch mit drin...

Wenn Array oder ähnliches, dann evtl. Tag-Eigenschaft als Gruppen-Indikator.

Chillkröte 3. Okt 2010 18:02

AW: Menüeinträge deaktivieren ausblenden / deaktivieren
 
was ist mit TObjectList?

BUG 3. Okt 2010 18:09

AW: Menüeinträge deaktivieren ausblenden / deaktivieren
 
Delphi-Quellcode:
var i:integer;
// ...
for i := 0 to MainMenu1.Items.Count-1 do MainMenu1.Items[i].Visible:= false;
Die TMenuItems haben auch eine Items Eigenschaft, du könntest also auch das gesamte Menü rekursiv durchlaufen.

Alfonso 3. Okt 2010 21:44

AW: Menüeinträge deaktivieren ausblenden / deaktivieren
 
Danke,
genau was ich suchte! :-D

Gruß
Alfonso


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:44 Uhr.

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