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/)
-   -   MainMenu ShortCut verhält sich komisch bei eigenem Shortcut (https://www.delphipraxis.net/191249-mainmenu-shortcut-verhaelt-sich-komisch-bei-eigenem-shortcut.html)

a.def 25. Dez 2016 12:51

MainMenu ShortCut verhält sich komisch bei eigenem Shortcut
 
Mir ist heute zum ersten Mal ein seltsames Verhalten beim MainMenu aufgefallen.

Man nehme eine VCL-Anwendung und ein MainMenu und lege den Eintrag "Datei" mit Untereinträgen an.
Man startet die Anwendung, drückt ALT und hält gedrückt und danach 1x D.
Resultat: der Eintrag Datei wird ausgeklappt und angezeigt.

Man mache dasselbe und verpasst dem Datei-Eintrag im Objektinspektor einen eigenen Shortcut.
Resultat: es passiert nichts. Man darf ALT nicht mehr gedrückt halten und muss es loslassen, bevor man, in diesem Fall, D drückt, um das Menu aufzuklappen.

Ist das normal?

Whookie 25. Dez 2016 19:42

AW: MainMenu ShortCut verhält sich komisch bei eigenem Shortcut
 
Beim mir geht das, gerade mal mit "D&atei" als Caption versucht und verhält sich absolut gleich wie mit "&Datei"

a.def 25. Dez 2016 20:06

AW: MainMenu ShortCut verhält sich komisch bei eigenem Shortcut
 
Ich glaube du hast mein Problem nicht verstanden.
Ich habe kein & in die Caption gesetzt.

Ich habe den Shortcut im Objektinspektor selber gesetzt und dann tritt die ALT-Problematik auf. Ließ dir am besten meine Fragestellung nochmal durch :P

uligerhardt 26. Dez 2016 08:25

AW: MainMenu ShortCut verhält sich komisch bei eigenem Shortcut
 
Zitat:

Zitat von a.def (Beitrag 1357176)
Mir ist heute zum ersten Mal ein seltsames Verhalten beim MainMenu aufgefallen.

Man nehme eine VCL-Anwendung und ein MainMenu und lege den Eintrag "Datei" mit Untereinträgen an.
Man startet die Anwendung, drückt ALT und hält gedrückt und danach 1x D.
Resultat: der Eintrag Datei wird ausgeklappt und angezeigt.

Man mache dasselbe und verpasst dem Datei-Eintrag im Objektinspektor einen eigenen Shortcut.
Resultat: es passiert nichts. Man darf ALT nicht mehr gedrückt halten und muss es loslassen, bevor man, in diesem Fall, D drückt, um das Menu aufzuklappen.

Ist das normal?

Ja. Das sind zwei verschiedene Konzepte. Ich kann mir die offiziellen Namen nie merken, aber das Unterstrichene im Menü ist ein Accelerator oder so, kein Shortcut.

Uwe Raabe 26. Dez 2016 10:08

AW: MainMenu ShortCut verhält sich komisch bei eigenem Shortcut
 
Zitat:

Zitat von a.def (Beitrag 1357198)
Ich habe den Shortcut im Objektinspektor selber gesetzt und dann tritt die ALT-Problematik auf.

Kann ich hier nicht nachvollziehen:
  • neues VCL-Projekt
  • TMainMenu drauf
  • Menü aus Vorlage "Datei" einfügen
  • Im Menüpunkt "Datei" den Shortcut auf F2 setzen
  • Run
  • Alt-D gedrückt halten
  • D drücken
  • Untermenü geht auf

Kannst du ein simples Beispiel mit genauen Anweisungen anhängen?

a.def 26. Dez 2016 10:36

AW: MainMenu ShortCut verhält sich komisch bei eigenem Shortcut
 
Zitat:

Zitat von Uwe Raabe (Beitrag 1357209)
Zitat:

Zitat von a.def (Beitrag 1357198)
Ich habe den Shortcut im Objektinspektor selber gesetzt und dann tritt die ALT-Problematik auf.

Kann ich hier nicht nachvollziehen:
  • Im Menüpunkt "Datei" den Shortcut auf F2 setzen

Kannst du ein simples Beispiel mit genauen Anweisungen anhängen?

"Datei" muss den Shortcut ALT+D bekommen, nicht F2.

nahpets 26. Dez 2016 11:53

AW: MainMenu ShortCut verhält sich komisch bei eigenem Shortcut
 
Menüs funktionieren ganz einfach über Tastatur:

Alt + unterstrichener Buchstabe klappen im Mainmenü das entsprechende Untermenü auf.

Sofern es bei den ersten Buchstaben der Menüpunkte keinen Dubletten gibt, ist es immer der erste Buchstabe im Eintrag. Gibt man bei den Menüeinträgen jedoch in der Caption ein & ein, so ist wird der folgende Buchstabe unterstrichen und reagiert auf Alt + den unterstrichenen Buchstaben.

Ein ShortCut dient dazu auf kurzem Weg einen Menüeintrag auszuwählen, der sich in einem der Untermenüs befindet, nicht jedoch für die Einträge im Mainmenü, die, ohne dass ein Menü aufgeklappt wird, bereits sichtbar sind (also nicht für die Menüleiste).

Hast Du im Mainmenü einen Eintrag Datei, so ist dort (vermutlich) das D der unterstrichene Buchstabe. Der Eintrag reagiert also auf Alt+D. Legst Du hier nun noch einen ShortCut Alt+D drauf, so ist das irgendwie doppelt, aber nicht wirklich zielführend.

Gehen wir mal davon aus, dass Du im Mainmenü einen Eintrag Datei hast und das darunter befindliche Menü hat einen Eintrag Ende, so kannst Du über die Tastatur mit Alt+D E den Eintrag Ende auswählen und die entsprechend Aktion wird ausgeführt. Gibst Du dem Eintrag Ende zusätzlich den Shortcut Alt+X, so kannst Du stattdessen diese Aktion auch per Alt+X ausführen, sparst also quasi die Betätigung einer Taste.

Wenn Datei zwingend den Shortcut Alt+D bekommen muss, dann wäre es sinnvoll, die Caption des Menüeintrages mit '&Datei' zu befüllen. &D besagt nämlich, dass der Shortcut für diesen Menüeintrag Alt+D ist. Ausserdem hindert man Windows dadurch daran, den Shortcut Alt+D anderweitig selbst zu vergeben.

Auf Menüeinträge im Mainmenü einen Shortcut zu legen ist eigentlich nicht wirklich sinnvoll, da von Windows hier bereits Shortcuts verwaltet werden. Bei der Vergabe von Shortcuts muss man darauf achten, dass man keine Shortcuts vergibt, die bereits von Windows für einen anderen Menüpunkt vergeben wurden. Alt in Kombination mit einem Buchstaben ist von daher nicht zwingend eine sinnvolle Variante, da es hier immer zu Konflikten kommen kann (aber nicht muss).

blawen 26. Dez 2016 11:56

AW: MainMenu ShortCut verhält sich komisch bei eigenem Shortcut
 
Zitat:

Zitat von a.def (Beitrag 1357210)
"Datei" muss den Shortcut ALT+D bekommen, nicht F2.

Es ist eigentlich logisch, dass es bei zwei gleichen "Shortcuts" knallen muss. Sofern Du den Accelerator nicht selber setzt, ist es ja standardmässig immer der erste Buchstabe.

a.def 26. Dez 2016 13:49

AW: MainMenu ShortCut verhält sich komisch bei eigenem Shortcut
 
Danke für eure Antworten!

Daraus schlussfolgere ich, dass wenn ich das &-Zeichen selber für &Datei setze, Windows das unterstrichene D nicht anderweitig benutzen darf/sollte?

nahpets 26. Dez 2016 14:09

AW: MainMenu ShortCut verhält sich komisch bei eigenem Shortcut
 
ja.


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