mit nur msg statt msg.msg kann zwar das Projekt kompilieren (Ohne Fehler oder Warnung)
aber der Cursor wird nicht ausgeblendet
Der Code soll den Cursor durch Klick auf Bevel ausblenden :
Delphi-Quellcode:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls,ShellAPI;
type
TForm1 =
class(TForm)
Bevel1: TBevel;
procedure FormCreate(Sender: TObject);
private
procedure myBevel1WinProc(
var Msg:TMessage);
public
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
var Bevel1OrgWinProc : TWndMethod;
procedure TForm1.myBevel1WinProc(
var Msg:TMessage);
procedure ToggleCursor;
begin
if Bevel1.Cursor=crDefault
then Bevel1.Cursor:=crNone
else Bevel1.Cursor:=crDefault;
end;
begin
if Msg.Msg = WM_LButtonDown
then ToggleCursor
// Reaktion von LeftButtonDown
// soll verändert werden
else Bevel1OrgWinProc(Msg);
// sonst Original aufrufen
end;
procedure TForm1.FormCreate(Sender:TObject);
begin
Bevel1OrgWinProc :=Bevel1.WindowProc;
// Originaladresse merken
Bevel1.WindowProc:=myBevel1WinProc;
// deine eigene Fensterprozedur "einklinken"
end;
end.
________