Einzelnen Beitrag anzeigen

mb.99

Registriert seit: 10. Dez 2011
23 Beiträge
 
#1

Message Funktioniert nicht Klassenübergreifend

  Alt 23. Okt 2014, 15:05
Delphi-Version: 5
Hallo,

ich möchte einer übergeordneten Klasse mittels Message mitteilen das ein TCustomcontroll angeklickt wurde, nur leider reagiert die
Funktion nicht auf die Message.
Wenn ich die Funktion direkt in die Klasse des TCustomcontroll setze funktioniert es jedoch.
Woran liegt das?

Klasse des TCustomcontroll
Code:

const
  CM_AktionTest = WM_USER + 1;

  TKnotenPunkt = class(TCustomControl)
  public
    constructor Create(ID: integer; newOwner: TComponent); overload;
  private
    {Die Zehnerstelle der ID steht für das Quadrat z.B. 1 für das innerste Quadrat,
     die einserstelle steht für die Position z.B. 1 für ObenLinks}
    KnotenID: integer;
    Status: TKnotenPunktStatus;
    Angeklickt: boolean;

    procedure Click; override;
    procedure paint; override;
  end;

procedure TKnotenPunkt.Click;
begin
  inherited;
  SendMessage (Self.Handle, CM_AktionTest, 10, 0); // 10, 0);
  Angeklickt := True;
end;
Übergeordnete Klasse

Code:
TSpielAblauf = class
public
  constructor create;

private
  SpielerS : TSpieler;
  SpielerW : TSpieler;
  SpielBrett : TSpielbrett;
  AblaufMerker : TAblaufMerker;
  procedure Aktion (var msg : TMessage); message CM_AktionTest;
  procedure Neustart;
end;

Gruß
  Mit Zitat antworten Zitat