Einzelnen Beitrag anzeigen

LuckySpacy

Registriert seit: 2. Apr 2003
Ort: Fränkisch-Crumbach
50 Beiträge
 
Delphi 10.4 Sydney
 
#7

Re: Checkbox / KeyDown, KeyPress, KeyUp

  Alt 14. Sep 2006, 11:24
Vielen Dank an alle die sich hier meinem Problem angenommen haben.

An Lannes:
Ich habe deinen Quellcode ausprobiert.
Funktioniert einwandfrei und wäre eine denkbare Lösung für mich.

Da ich aber damit ein grundsätzliches Problem habe und ich nicht
in allen Projekten vorher diesen Quellcode übernehmen möchte,
habe ich mich für eine andere Lösung entschieden.

Ich habe aus der TCheckbox meine eigene Komponente gemacht.
Die Lösung ist ganz einfach:

Delphi-Quellcode:
unit syCheckBox;

interface

uses
  SysUtils, Classes, Controls, StdCtrls, Windows, Messages;

type
  TsyCheckBox = class(TCheckBox)
  private
    procedure WMGETDLGCODE(var msg : TWMGetDlgCode); message WM_GETDLGCODE;
 protected
  public
  published
  end;

procedure Register;

implementation

procedure Register;
begin
  RegisterComponents('MeineKomponenten', [TsyCheckBox]);
end;

{ TsyCheckBox }

procedure TsyCheckBox.WMGETDLGCODE(var msg: TWMGetDlgCode);
begin
  msg.Result := msg.Result or DLGC_WANTARROWS;
end;


end.
Damit kann ich ganz normal die KeyDown und KeyUp Ereignisse abfragen und es wird kein anderes Control fokusiert.
Vorsicht: KeyPress funktioniert damit nicht.
Thomas Bachmann
  Mit Zitat antworten Zitat