Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi TMenuItem um MouseMove erweitern (https://www.delphipraxis.net/125768-tmenuitem-um-mousemove-erweitern.html)

MrRenz2 11. Dez 2008 09:34


TMenuItem um MouseMove erweitern
 
Hallo,

ich hätte gerne bei einem MenuItem in einem MainMenu auch ein MouseMove Event. Leider ist dies standardmäßig nicht drin.

Ich habe nun gedacht, ganz einfach, da bauen wir uns eben ein eigenes MenuItem, leiten das von TMenuItem ab und erweitern es um das passende Event.

Nur leider bekomme ich es einfach nicht hin.

Mein Code ist folgender:

Delphi-Quellcode:
unit ADvMenuItem;

interface

uses
  Controls, Menus, Messages, Classes, Windows;

type
  TAdvMenuItem = class (TMenuItem)
  private
    FOnMouseOver : TNotifyEvent;
    procedure FDoMouseOver (var Msg: TMsg); message wm_MouseMove;
  public
    property OnMouseOver : TNotifyEvent read FOnMouseOver write FOnMouseOver;
  end;

implementation

procedure TAdvMenuItem.FDoMouseOver (var Msg : TMsg);
begin
  if assigned(FOnMouseOver) then
      FOnMouseOver(self);
end;
Leider ist es nun aber so, dass das Programm nie in die FDoMouseOver Routine kommt. Was mache ich falsch?

SirThornberry 11. Dez 2008 09:38

Re: TMenuItem um MouseMove erweitern
 
Ich denke du machst nichts falsch. Zwar sind die MenuItems eigene Objecte aber sie haben kein eigenes Fensterhandle und können somit auch keine Nachrichten empfangen. Sie sind lediglich Objecte deren Daten dann innerhalb des gesamten Menüs genutzt und dargestellt werden.

MrRenz2 11. Dez 2008 09:42

Re: TMenuItem um MouseMove erweitern
 
Gibt es denn dann vielleicht eine andere Möglichkeit um darauf zu reagieren, wenn die Maus auf einem Menüpunkt ist? Also zum Beispiel um in einer Statusleiste was anzuzeigen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:00 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