Jakie oznaczenia w kodzie znaków (#), mają klawisze strałek: 1: do góry,2: w dół, 3 w lewo, 4: w prawo??
Wstaw do pustej aplikacji TEdit i daj taki kod na zdarzenie OnKeyUp:
Edit1.Text:=IntToStr(Key);
Edit1.SelectAll;
Odpal aplikację i sam sprawdź. Możesz też używać stałych (VK_UP, VK_DOWN, VK_LEFT, VK_RIGHT).
#72 up
#80 down
#75 left
#77 right
#27 esc
#13 enter
(kody ASCII podają w pierwszej lepszej książce o programowaniu)
Tylko kto o zdrowych zmysłach posługuje się w kodzie kodami ASCII, gdy może użyć stałej o wiele mówiącej nazwie? Ani kod nie jest wtedy czytelny (a jak jest, to wyłącznie dla autora), ani zysku żadnego z tego dodatkowo nie ma. Więc po co? Dla zasady? Nie warto.
Tu w pełni się zgadzam, że użycie stałej K_UP jest bardziej czytelne, autor pytania jednak chciał kody strzałek, to mu je podałem. Nikomu nie mam zamiaru zabraniać utrudniać sobie życia. Aczkolwiek zapis
const
K_UP = #72;
jest miłym uproszczeniem sobie pisania programów.
Oleksy Adam napisał(a)
#72 up
#80 down
#75 left
#77 right
#27 esc
#13 enter(kody ASCII podają w pierwszej lepszej książce o programowaniu)
To jakie w takim razie w tych Twoich książkach kody mają litery odpowiednio:
H
P
K
M
Bo w mojej te litery mają dokładnie takie kody jak podałeś dla strzałek, te zaś mają odpowiednio:
38 UP
40 DOWN
37 LEFT
39 RIGHT
//Dzięki Szczawik za wyjaśnienie
To prawda, kody: #72 up, #80 down, #75 left, #77 right, są kodami dostępnymi w MsDos jako kody rozszerzone (najpierw odczyt #0, a potem #72 dla UP). W Windows wiele klawiszy wirtualnych (!) ma inne kody (na przykład F1-F24). Choćby dla takich nieporozumień lepiej używac stałych.
Smiglo napisał(a)
Oleksy Adam napisał(a)
#72 up
#80 down
#75 left
#77 right
#27 esc
#13 enter(kody ASCII podają w pierwszej lepszej książce o programowaniu)
To jakie w takim razie w tych Twoich książkach kody mają litery odpowiednio:
H
P
K
MBo w mojej te litery mają dokładnie takie kody jak podałeś dla strzałek, te zaś mają odpowiednio:
38 UP // &
40 DOWN // (
37 LEFT // %
39 RIGHT // )
U mnie trochę inaczej (jak widzisz) odkąd pisze programy to klawisze strzałek miały kody, które podałem.