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).
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.