Entwickler-Ecke

Sonstiges (Delphi) - Rechtsklick


Alrik - So 23.03.03 16:03
Titel: Rechtsklick
Hallo

Wie schaffe ich ,dass bei einem Rechtsklick auf das Feld mit dem Programm, wenn das Programm läuft, unten zwischen "start" und "tna" ein anderes Menü sich öffnet als das "Schließen-Maximier-Minimier-Verschieben..." Menü?


Delete - So 23.03.03 16:12

Gar nicht, du kannst es nur modifizieren. Alsi Einträge rausnehmen (damit ändern sich auch die Buttons - vorsicht) und Einträge hinzufügen.

Stop. Halt, alles zurück. Bei einer VCL-Anwendung ist das Menü vom Button in der Taskleiste vom TApplicationobjekt das unsichtbare Fenster jeder VCL Anwendung und das kann man nicht beeinflußen. Mit dem SystemMenü von der Form geht es.

Dass das Menü von TApplication kommt, sieht man übrigens daran, dass bei einer VCL Anwendung nicht alle Menüpunkte zur Verfügung stehen.


Motzi - So 23.03.03 17:41

Doch, es geht schon. Du musst die undokumentierte Windows-Message mit Hexwert $313 abfangen und kannst dann dein eigenes Menü an der Maus-Position aufpopen lassen. Falls es sich aber (wie Luckie gesagt hat) wirklich um das SystemMenu des TApplication-Objektes handelt (bin mir in dem Fall aber nicht ganz sicher) dann müsstest du entweder das OnMessage-Ereignis verwenden (bin mir nicht ganz sicher ob das funktioniert) oder aber die WndProc des Application-Objektes subclassen.