AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) HMENU zur laufzeit die Beschriftung herausbekommen

HMENU zur laufzeit die Beschriftung herausbekommen

Ein Thema von lbccaleb · begonnen am 25. Nov 2008 · letzter Beitrag vom 29. Nov 2008
Antwort Antwort
Seite 1 von 2  1 2   
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#1

HMENU zur laufzeit die Beschriftung herausbekommen

  Alt 25. Nov 2008, 21:53
Hallo Community,

Ich erzeuge zur Laufzeit ein PopUp-Menü dabei sind die einzelnen Einträge unterschiedlich, sprich, die Beschriftung ist anders! Wie kann ich nun anhand der Messages den Text herrausbekommen, mit welchem ich das Menü erzeugt habe?

Danke schon mal im vorraus...
Martin
MFG Caleb
TheSmallOne (MediaPlayer)
Die Dinge werden berechenbar, wenn man die Natur einer Sache durchschaut hat (Blade)
  Mit Zitat antworten Zitat
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: HMENU zur laufzeit die Beschriftung herausbekommen

  Alt 26. Nov 2008, 09:28
Sorry das ich Pushe, aber ich komm irgendwie nicht so recht weiter *grummel*
Martin
MFG Caleb
TheSmallOne (MediaPlayer)
Die Dinge werden berechenbar, wenn man die Natur einer Sache durchschaut hat (Blade)
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: HMENU zur laufzeit die Beschriftung herausbekommen

  Alt 26. Nov 2008, 09:29
Non-VCL?
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: HMENU zur laufzeit die Beschriftung herausbekommen

  Alt 26. Nov 2008, 09:32
ja, nonVCL
Martin
MFG Caleb
TheSmallOne (MediaPlayer)
Die Dinge werden berechenbar, wenn man die Natur einer Sache durchschaut hat (Blade)
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#5

Re: HMENU zur laufzeit die Beschriftung herausbekommen

  Alt 26. Nov 2008, 09:38
Ich habe leider gerade kein Delphi zur Hand aber ich würde wie folgt vorgehen.
Ein Popupmenu nehmen und einen Eintrag anlegen. Dann per Quelltext die Caption abfragen (in etwa: PopupMenu1.Items[i].Caption) und dann nach der Declaration von Caption suchen (rechtsklick und entsprechenden Punkt im Menü auswählen oder Strg + Linke Maustaste auf Caption)
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: HMENU zur laufzeit die Beschriftung herausbekommen

  Alt 26. Nov 2008, 09:42
Das wäre dann aber VCL
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#7

Re: HMENU zur laufzeit die Beschriftung herausbekommen

  Alt 26. Nov 2008, 09:45
Nein, wäre es nicht. Das war eine beschreibung wie ich heraus finden würde wie es nonvcl geht. Denn im Source der VCL steckt mehr oder weniger tief vergraben der nonvcl aufruf. Und wenn man die Declaration sucht und dort schaut wie es in der VCL implementiert ist findet man eben den nonvcl-Aufruf
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#8

Re: HMENU zur laufzeit die Beschriftung herausbekommen

  Alt 26. Nov 2008, 09:46
Ja, VCL weiß ich wie ich es machen würde...
Naja, ist für meinen MediaPlayer! Lade die Filter als PopUp-Menü, und wollte dann bei Click Sie weiterverarbeiten! Da ich aber nicht weiß, welcher Filter, welchem Menü zugeordnet wurde, brauche ich die Bezeichnung, denn beim laden wird die ja nach dem Filter benannt!
Martin
MFG Caleb
TheSmallOne (MediaPlayer)
Die Dinge werden berechenbar, wenn man die Natur einer Sache durchschaut hat (Blade)
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#9

Re: HMENU zur laufzeit die Beschriftung herausbekommen

  Alt 26. Nov 2008, 09:49
wie gesagt sollst du es auch nicht mit der VCL machen sondern einfach in den VCL Sourcen schauen Da ich gerade kein Delphi zur Hand habe kann ich nicht selbst schauen und habe daher beschrieben wo/wie ich schauen würde.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#10

Re: HMENU zur laufzeit die Beschriftung herausbekommen

  Alt 26. Nov 2008, 10:06
Also die VCL macht es über MenuItemInfo.dwTypeData

Damit hatte ich auch schon rumgespielt, naja aber irgendwie kommt da bei mir nicht vernünftiges bei raus
Delphi-Quellcode:
GetMenuItemInfo(hFilterPopUpMenue, loword(wParam), False, MenuItemInfo1)
//loword(wParam) = ID des Menüs
Hat denn jemand ne ahnung wieso die funktion fehlschlägt??
Martin
MFG Caleb
TheSmallOne (MediaPlayer)
Die Dinge werden berechenbar, wenn man die Natur einer Sache durchschaut hat (Blade)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 08:58 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