Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Hauptmenue teilweise unsichtbar machen (https://www.delphipraxis.net/192557-hauptmenue-teilweise-unsichtbar-machen.html)

Gunther Seel 1. Mai 2017 08:13

Hauptmenue teilweise unsichtbar machen
 
Einen schönen Gruß an die Cracks!

Ich habe ein Hauptmenue mit zwei Spalten. Ich möchte bei Bedarf eine der Spalten unsichtbar bzw. deaktivieren.
Geht das und gegebenenfalls wie?

Vielen Dank im Voraus
Gunther

Daniel 1. Mai 2017 08:44

AW: Hauptmenue teilweise unsichtbar machen
 
Ein Menü ist aus sog. "Menu-Items" aufgebaut, die jeweils eine Eigenschaft "Visible" haben. Damit kannst Du die Sichtbarkeit steuern.
Nur für das Protokoll: Wenn Du beabsichtigst, damit Programmteile oder - Funktionen für Benutzer oder in bestimmten Situationen zu sperren, solltest Du das zur Sicherheit zusätzlich in Deiner Programmlogik im Code machen.

Gunther Seel 1. Mai 2017 09:36

AW: Hauptmenue teilweise unsichtbar machen
 
Herzlichen Dank, hat am Ende geklappt.
Dennoch eine Verständnisfrage:

Ich hatte es immer mit

"Mainmenu1.Trainingsbereich1.visible:=false;"

versucht. Die richtige Anweisung lautet:

"Trainingsbereich1.visible:=false;"

Warum eigentlich
Gunther ( aus den sonnigen Hamburg :-D )

Hobbycoder 1. Mai 2017 09:40

AW: Hauptmenue teilweise unsichtbar machen
 
Je nach Anwendungsafall kann es auch sinnvoll sein, die Menuitems nicht über Visible gänzlich auszublenden, sondern nur über enable zu deaktivieren.
Z.B in eine Textesit im Popupmenu die Items "Kopieren" oder "Ausschneiden" zu deaktivieren wenn SelCount=0, oder "Einfügen" nur, wenn sich auch was passendes im Zischenspeicher befindet.
Gibt dann ein schöneres Look-and-feel.

uligerhardt 1. Mai 2017 11:19

AW: Hauptmenue teilweise unsichtbar machen
 
Zitat:

Zitat von Gunther Seel (Beitrag 1369574)
Ich hatte es immer mit

"Mainmenu1.Trainingsbereich1.visible:=false;"

versucht. Die richtige Anweisung lautet:

"Trainingsbereich1.visible:=false;"

Warum eigentlich

Weil die Pascal-Variable "Trainingsbereich1" heißt. Dass sie im Designer ein "Kind" von "MainMenu1" ist, interessiert den Compiler nicht.


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:16 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