AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Fremdes PopupMenu erweitern

Ein Thema von Björn Ole · begonnen am 28. Jul 2010 · letzter Beitrag vom 5. Jul 2011
Antwort Antwort
Benutzerbild von Björn Ole
Björn Ole

Registriert seit: 10. Jul 2008
166 Beiträge
 
Delphi XE Professional
 
#1

Fremdes PopupMenu erweitern

  Alt 28. Jul 2010, 15:39
Hallo,


ist es möglich, ein Popupmenu (des Tray-Icons) einer fremden,
nicht-Delphi Anwendung (32bit) um einen Eintrag zu erweitern?

Ich habe schon versucht, Informationen zu sammeln, aber finde nichts passendes,
nocht nicht mal irgendwelche Nachrichten, die ich hooken könnte.
Darum befürchte ich, dass es überhaupt nicht möglich ist...

Wäre für einen Ratschlag dankbar.


Gruß, Björn
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.874 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Fremdes PopupMenu erweitern

  Alt 28. Jul 2010, 15:43
Was hast du vor?
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Björn Ole
Björn Ole

Registriert seit: 10. Jul 2008
166 Beiträge
 
Delphi XE Professional
 
#3

AW: Fremdes PopupMenu erweitern

  Alt 28. Jul 2010, 15:52
Ich habe für eine Anwendung eine Art Zusatzfeature programmiert und möchte jetzt einen kleinen "Einstellungen"-Dialog über das Popupmenu öffnen. Zur Not könnte ich mein Zusatzfeature auch in eine weitere Anwendung auslagern und es darüber machen, aber mich würde es halt interessieren, ob es nicht auch über das Popupmenu geht, weil das komfortabler zu bedienen wäre.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.874 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Fremdes PopupMenu erweitern

  Alt 28. Jul 2010, 15:54
Also ich persönlich fände es nicht gut, wenn jemand ein Kontextmenü meiner Anwendung erweitert.
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Björn Ole
Björn Ole

Registriert seit: 10. Jul 2008
166 Beiträge
 
Delphi XE Professional
 
#5

AW: Fremdes PopupMenu erweitern

  Alt 28. Jul 2010, 15:57
Hättest du einen besseren Vorschlag?

Ich würde die TNA ungern mit einem weiteren Icon belästigen wollen, und da schien mir die Idee mit dem Erweitern des Popupmenus am dezentesten.


[Edit]
Habe es inzwischen selber hinbekommen.
  • WH_CALLWNDPROC mittels SetWindowsHookEx hooken
  • auf WM_INITMENU warten
  • InsertMenuItem mit dem Handle des PopupMenus (CWPSTRUCT.wParam) aufrufen

Für weitere Ratschläge bin ich aber weiterhin offen.

Geändert von Björn Ole (29. Jul 2010 um 03:17 Uhr)
  Mit Zitat antworten Zitat
Schwedenbitter

Registriert seit: 22. Mär 2003
Ort: Finsterwalde
622 Beiträge
 
Turbo Delphi für Win32
 
#6

AW: Fremdes PopupMenu erweitern

  Alt 4. Jul 2011, 14:24
[Edit]
Habe es inzwischen selber hinbekommen.
  • WH_CALLWNDPROC mittels SetWindowsHookEx hooken
  • auf WM_INITMENU warten
  • InsertMenuItem mit dem Handle des PopupMenus (CWPSTRUCT.wParam) aufrufen
Würde es Dir viel ausmachen, hier mal Code zu posten?

Ich stehe vor einem ähnlichen Problem. Ich möchte gern das PopupMenü eines stinknormales TMemo um einen Eintrag erweitern.
Mit
Delphi-Quellcode:
lMenu:=GetSystemMenu(Memo1.Handle, False);
InsertMenu(lMenu, 0, MF_BYPOSITION, PrevItemID, 'Icons preview');
klappt es leider nicht. Ist ja auch kein SystemMenü. Aber GetMemo bringt mich auch nicht weiter ...
Alex Winzer
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:19 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-2025 by Thomas Breitkreuz