OnKeyUp, strzałki i TabOrder

0

Chcę skorzystać z wydarzenia OnKeyDown lub OnKeyUp (ewentualnie OnKeyPress) dla komponentu TButton. Zrobiłem sobie tymczasem prostą procedurę sprawdzającą, która wypisuje mi kod naciśniętego klawisza. Wszystko działa dla liter, klawiszy F1..F10, Home, End, PgDn, PgUp, ale naciśnięcie strzałek się już nie udaje, zamiast tego program wykonuje przejście do następnego komponentu w cyklu Tab. Jak temu zaradzić?

0

Np. przez obsługę komunikatu WM_KEYDOWN

0

Obsługa komunikatu WM_KEYDOWN - to dla mnie jeszcze za trudne. Nie mam też tego wyrażenia w helpie (korzystam z Delphi wersja 5.0). Poniżej ta procedura, o której pisałem. Czy mógłbyś mi na niej pokazać (dopisać), jak ją wzbogacić o ten myk?

procedure TForm1.Button1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
var s:string;
begin
str(Key,s);
Label1.Caption:=s;
end;

0

w sekcji private
procedure WMKEYDOWN(var Msg : TMessage); message WM_KEYDOWN;
a potem

procedure TForm1.WMKEYDOWN(var Msg : TMessage);
begin
Edit1.Text:=IntToStr(Msg.WParam);
end;

Polecam lekture http://4programmers.net/Delphi/Kompendium/Rozdzia%C5%82_5

0

Wielkie dzięki! Jeszcze nie wszystko hula tak, jakbym chciał, i pewnie trochę roboty przede mną, ale pierwsze efekty są. Dałeś mi bardzo dobry punkt zaczepienia. Tymczasem nie zadaję więcej pytań, poczytam, poeksperymentuję, dziękuję.

1 użytkowników online, w tym zalogowanych: 0, gości: 1