Einzelnen Beitrag anzeigen

Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: OnMouseEnter/-Over/-Leave für beliebige Komponente?

  Alt 22. Sep 2008, 11:24
Delphi-Quellcode:
type
  TForm1 = class(TForm)
    vst: TVirtualStringTree;
    Memo1: TMemo;
    procedure FormCreate(Sender: TObject);
  private
    { Private-Deklarationen }
    FoldVSTWndProc:TWndMethod;
    procedure VSTwndproc(var msg:TMessage);
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  FoldVstWndProc:=vst.WindowProc;
  vst.WindowProc:=vstwndproc;
end;

procedure TForm1.VSTwndproc(var msg: TMessage);
begin
  FoldVSTWndProc(msG);
  case msg.Msg of
    cm_mouseleave: memo1.lines.add('bye');
    cm_mouseenter: memo1.lines.add('hello');
  end;
end;
Das ganze etwas allegemeiner gehalten in einer Komponente hängt unten an. Dabei wird aber nicht die interne CM-xxx-nachricht verwendet, sondern die Kompenente achtet selber auf die Mouse (mit Mousecapture).
Angehängte Dateien
Dateityp: pas u_mouse_779.pas (6,6 KB, 7x aufgerufen)
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat