Wie Sie einen Menüpunkt auswählen, ohne das Menü?

Standardmäßig, wenn Sie wählen Sie ein Element aus einem TMainMenu-oder TPopupMenu etc, das Menü wird geschlossen, nachdem es angeklickt wurde. Ich möchte dieses Verhalten so ändern, dass wenn ich die Option auf einen Menüpunkt, das Menü nicht schließen, aber Sie bleibt sichtbar und offen an der Stelle war es zuletzt geklickt haben, wodurch es einfacher ist, wählen Sie einen anderen Menüpunkt, falls gewünscht. Natürlich wechseln des Fokus auf ein anderes Steuerelement ausblenden soll das Menü wie normal, aber wenn der Fokus weiterhin auf der Speisekarte zu halten, die es sichtbar.

Wenn das möglich ist, möchte ich dieses Verhalten nur auf bestimmte Menüpunkte. In anderen Worten, wenn ich alle Menüpunkte funktionieren wie normal, aber wenn ich geben Sie einen oder zwei Menüpunkte, dies wird nicht schließen Sie das Menü, wenn ausgewählt.

Der Grund, warum ich dies tun wollen, ist wie so, ich habe ein Einstellungs-Formular in meine Anwendung, wo Sie viele Optionen, die konfiguriert werden können, den üblichen Kram etc, aber auch in der Main Form habe ich einige der häufigsten häufiger verwendeten Optionen in einem TMainMenu. Diese gemeinsame Optionen in meinem Menü möchte ich in der Lage sein zu wählen, ohne das Menü, so dass andere Optionen können ausgewählt werden, zum Beispiel die zimmerreserviereung, ohne das navigieren durch die Menüpunkte.

Gibt es einen standardisierten Weg, dies zu erreichen?

Dank

Craig.

  • +1. Innerhalb von wenigen Minuten, eine Menge von "nitpicker' argumentieren, dass dies nicht die Standard-Windows-design ist, und dass dies verwirren den Anwender. Aber zu Ihrer Verteidigung, Sie können argumentieren, dass die status bar Kontextmenü in Microsoft Office (2010 mindestens) Anwendungen, um nur zu nennen ein Beispiel, verhält sich wie diese. Und das ist eine sehr gute Sache, für die dieses Kontextmenü enthält nur die check-box Elemente, und Sie werden wahrscheinlich auf einige von Ihnen in einer Reihe.
  • Auch ich habe Office 2010, aber ein Blick aus dem screenshot in dem link, es scheint, etwas ähnliches zu tun, was ich will, der einzige Unterschied ist, ich bin mit einem standard-TMainMenu.
  • Ich denke, dass wird hart werden, zu erreichen mit einem standard-Menü.
  • Sie sind oft eine der Chef-nitpicker argument zugunsten von standard-UI. Haben Sie sich reformiert? 😉
  • Ich weiß, aber nur zum Teil. Und dies ist einer der Fälle, in denen eine slighlty different design könnte völlig akzeptabel, wie der Microsoft Word-Fall.
  • Es ist akzeptabel, ja, es ist nicht getan mit der Win32-eingebaute popup-Menü tracking-Funktionen.
  • Ich Frage mich, ob die TActionMainMenuBar kann geändert werden, um dies zu erreichen (natürlich nur, wenn der action manager ist Style <> Platform default ).
  • Ja kann es, ich habe getan, dass für eines meiner Projekte. Leider, meine spezielle Implementierung ist eine Mischung von modifizierten VCL-code und ein paar meiner eigenen abgeleiteten Klassen; ich zögern, es hier zu veröffentlichen.
  • Nicht this Sinn?
  • mit TActionMainMenuBar ist kein problem, wenn eine Lösung gefunden werden kann, mit diesem ich manchmal verwenden Sie diese Komponente, für Office-XP-Stil-Menü. Mein problem scheint nicht zu haben eine straight-forward beantworten, aber so bin ich nicht in der Hoffnung zu viel.

InformationsquelleAutor | 2011-05-12
Schreibe einen Kommentar