Einzelnen Beitrag anzeigen

Bunke5

Registriert seit: 15. Jun 2005
Ort: Suhl
10 Beiträge
 
Delphi 6 Professional
 
#1

Windows Message in einer Klasse

  Alt 15. Jun 2005, 11:04
Hallo,

folgendes Problem, ich möchte die Windows Message "WM_INPUTLANGCHANGE" in einer Klasse bearbeiten. Aber irgendwo fehlt mir der richtige Ansatz.

Delphi-Quellcode:
type
  TSprache = class(TWinControl)
  private
  public
    constructor Create(AOwner: TComponent); override;
    procedure KeyboardChange(var Message: TMessage); message WM_INPUTLANGCHANGE;
  end;

  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
    Sprache: TSprache;
    //procedure KeyboardChange2(var Message: TMessage); message WM_INPUTLANGCHANGE;
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

constructor TSprache.Create(AOwner: TComponent);
begin
  inherited Create(AOwner);
end;

procedure TSprache.KeyboardChange(var Message: TMessage);
begin
  Showmessage('test');
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  Sprache := TSprache.Create(Form1);
end;

//procedure TForm1.KeyboardChange2(var Message: TMessage);
//begin
// Showmessage('test2');
//end;
Wenn ich die Windows Message in dem Form bearbeite (auskommentierter Quelltext) geht es, in einer Klasse nicht. Wenn ich dem Form nun einen Button hinzufüge geht es auch nicht mehr. Also muss ich doch einen Denkfehler machen .

Ziel ist es am Ende diese Windows Message in einer Komponente zu bearbeiten.

Bin für jede Hilfe dankbar, kann auch ein Beispiel oder Tutorial zu diesem Thema sein.

Gruß Bunke5
  Mit Zitat antworten Zitat