![]() |
KeyDown reagiert auf vk_next aber nicht auf vk_down...
Also der Titel sagt schon, dass meine Komponente zwar auf vk_next (bild ab) reagiert, aber nicht auf vk_down.
Warum? Was ist an der Taste anders?
Delphi-Quellcode:
type
Tgliste2 = class(TCustomControl) ... procedure Tgliste2.KeyDown (var Key: Word; Shift: TShiftState); begin inherited; //Komponente kriegt sonst keinen Focus if not focused then begin parent.Setfocus; self.SetFocus; end; if assigned(OnKeyDown) then OnKeyDown(key,Shift); case key of vk_up : Runterscrollen; vk_down : Raufscrollen; vk_next : Runterscrollen; vk_prior: Raufscrollen; end; end; |
Re: KeyDown reagiert auf vk_next aber nicht auf vk_down...
Hi,
vielleich wird ja im OnKeyDown die Variable Key auf 0 gesetzt (Übergabe als Var). Cu, Frank |
Re: KeyDown reagiert auf vk_next aber nicht auf vk_down...
Du musst WM_GETDLGCODE abfangen, und zum geerbten Ergebnis DLGC_WANTARROWS hinzufügen. Das geht aber glaub ich erst ab TWinControl.
Wenn DLGC_WANTARROWS nicht im Ergebnis dieser Windowsnachricht steht, sendet Windows die Arrow Keys erst garnicht an dieses Handle. |
Re: KeyDown reagiert auf vk_next aber nicht auf vk_down...
@Sidorion: Wie du bereits geschrieben hast geht das erst ab TWinControl. Tcontrol etc. braucht das auch nicht können weil dies keinen Focus erhalten kann und somit auch keine KeyMessages etc. erhält.
|
Re: KeyDown reagiert auf vk_next aber nicht auf vk_down...
dann kriegt er aber auch kein vk_next. Hab grad nopchmal gekuckt, TCustomControl leitet von TWinControl ab. Da sollte es so gehen.
|
Re: KeyDown reagiert auf vk_next aber nicht auf vk_down...
Nach dem Einbinden von
Delphi-Quellcode:
(Quelle
procedure WMGetDlgCode(var Msg: TMessage); message WM_GETDLGCODE;
procedure Tgliste2.WMGetDlgCode(var Msg: TMessage); begin inherited; Msg.Result := Msg.Result or DLGC_WANTARROWS; end; ![]() funktionieren nun auch die Pfeiltasten. Danke. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:27 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz