![]() |
TJvPopupMenu und OwnerDraw
Ich möchte in den OnDraw-Ereignissen eines Jedi-PopupMenus diverse Aktionen ausführen (u.a. halt das Aussehen des menüs manipulieren).
Das Menü und die jeweiligen Items kennen die Ereignisse "OnDrawItem" (Items zusätzlich noch "OnAdvancedDrawItem"), welche ausgelöst werden sollten, wenn JvPopupMenu.OwnerDraw = true ist. Allerdings funktioniert das nicht. Die Eigenschaft "OwnerDraw" ist im Komponenteninspektor erst gar nicht vorhanden, daher muss ich den Wert per Quellcode setzen, was auch funktioniert (Prüfung zeigt, dass "true"). Die onDraw-Ereignisse werden jedoch niemals ausgelöst. :? Weiß jemand warum? Ich habe nur altes gefunden, wonach es einmal ein paar Fehler bei den Komponenten und der Ereignisbehandlung gab, die eigentlich repariert wurden. Es wirkt allerdings, als hätte man die Eigenschaft OwnerDraw nachträglich versteckt. :gruebel: Aus der JvMenus-Unit:
Delphi-Quellcode:
property OwnerDraw stored False;
|
Re: TJvPopupMenu und OwnerDraw
Moin,
welchen ItemPainter verwendest du denn? Frohe Ostern |
Re: TJvPopupMenu und OwnerDraw
Hi,
nutze gerade diesen XpMenuItemPainter. Ich hab ihn aber gerade entfernt und mit dem Style-Wert gespielt. Ändert auch nichts. Nichtmal bei Style=msOwnerDraw wird das Ereignis ausgelöst. Dafür hat man dann auch kein wirkliches Menü mehr ;) Danke und gleichfalls frohe Ostern |
Re: TJvPopupMenu und OwnerDraw
Hallo, das OnMenuDrawItem Ereignis von TJvPopupMenu wird aber schon ausgelöst? Bei mir zumindest.
|
Re: TJvPopupMenu und OwnerDraw
Zitat:
Ist ein anderer Stil oder Painter gesetzt gechieht gar nichts. Und ich wollte ja nicht das gesamte Menü selbst zeichnen, sondern nur bei einem Eintrag das Aussehen anpassen ;) Bei den normalen Menü-Komponenten ist das auch kein Problem (dafür hat man dann nicht den schicken XP- oder Office-Look). |
Re: TJvPopupMenu und OwnerDraw
Zitat:
Delphi-Quellcode:
Item: TMenuItem; Rect: TRect;
|
Re: TJvPopupMenu und OwnerDraw
Zitat:
Aber ist auch egal (auch wenn ich es mir jetzt irgendwo herhole), weil bei ja zb bei den XP-Stil-Menüs auch das Ereignis nicht ausgelöst wird. Fange ich es bei msOwnerDraw ab habe ich gar keine Menüeinträge, müsste also alle selbst zeichnen, inkl. dem Stil-Design. Und dann kann ich auf die Jedi-Komponenten auch verzichten, da ich so mehr Arbeit hätte, also ohne. Ich finde es nur seltsam, dass die Ereignisse nicht ausgelöst werden, obwohl man es erwarten würde. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:55 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 by Thomas Breitkreuz