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/)
-   -   Delphi Mehrfachauswahl im Menu (https://www.delphipraxis.net/130260-mehrfachauswahl-im-menu.html)

Tyrael Y. 5. Mär 2009 16:50


Mehrfachauswahl im Menu
 
Hallo zusammen,

mit der Eigenschaft Checked von TMenuItem ist es möglich einen Menueintrag als "ausgewählt" zu markieren. Bei jeder Auswahl schliesst sich das Menu sofort.

Ist es mit Boardmitteln überhaupt nicht möglich eine Mehrfachauswahl durchzuführen, ohne daß das Menu sich schliesst?

Ich hab leider eben beim drüberschauen auf dem ersten Blick nichts gesehen, was dies ermöglichen könnte.

shmia 5. Mär 2009 17:39

Re: Mehrfachauswahl im Menu
 
Zitat:

Zitat von Tyrael Y.
Ist es mit Boardmitteln überhaupt nicht möglich eine Mehrfachauswahl durchzuführen, ohne daß das Menu sich schliesst?

Nein das geht nicht.
Ausserdem musst du selbst im Code das Property Checked an- und abschalten.
Delphi-Quellcode:
procedure TForm1.MenuItemClicked(Sender: TObject);
begin
   with Sender as TMenuItem do
      Checked := not Checked;
end;
Wenn du viele gleichartige Optionen hast, wäre die TCheckListBox vielleicht was für dich.

Tyrael Y. 6. Mär 2009 08:15

Re: Mehrfachauswahl im Menu
 
Zitat:

Zitat von shmia
Nein das geht nicht.

Dachte ich mir schon. Aber bevor ich etwas übersehe, dachte ich mir frage ich hier mal.

Zitat:

Zitat von shmia
Ausserdem musst du selbst im Code das Property Checked an- und abschalten.

Der Umgang mit TMenu, TMainMenu udn TMenuItem ist mir ansonsten wohlbekannt. ;)

Zitat:

Zitat von shmia
Wenn du viele gleichartige Optionen hast, wäre die TCheckListBox vielleicht was für dich.

Ich überlege gerade, ob ich nicht ein eigene Komponente mit dem gewünschten Verhalten selbt implementiere. So wie ich das sehe, kann ich nicht mal von TMenu ableiten, sondern muss bei TComponent anfangen...mal schauen, ob ich es wirklich machen werde.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:49 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 by Thomas Breitkreuz