Czarny Ass Opublikowano 28 Kwietnia 2010 Udostępnij Opublikowano 28 Kwietnia 2010 Jak zrobić klawisze rozszerzone? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Marmot Opublikowano 1 Maja 2010 Udostępnij Opublikowano 1 Maja 2010 Sprawdzaj dwukrotnie. Tu masz więcej: http://www.pascal.eu.org/lekcja6.htm Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Czarny Ass Opublikowano 2 Maja 2010 Autor Udostępnij Opublikowano 2 Maja 2010 What the...? USES CRT; Var c1,c2:char; Begin Repeat c1:=ReadKey; c2:=' '; {1} if c1=chr(0) then c2:=ReadKey; {2} if c2='H' then WriteLn('Kursor w górę'); if c2='P' then WriteLn('Kursor w dół'); if c2='M' then WriteLn('Kursor w prawo'); if c2='K' then WriteLn('Kursor w lewo'); Until c1=chr(27); End. Przeanalizujmy kod: Powtarza wszystko póki nie nadusimy przycisku ESC. Wczytuje klawisz. Ustawia c2 na ' '. I teraz warunki: - jeśli c1 to klawisz rozszerzony (#0) wtedy c2 ustawia readkey czyli powinno jeszcze raz sprawdzić klawisz teraz skoro nadusiłem rozszerzony (teoretycznie ale tego nie zrobiłem). - Teraz sprawdza czy c2 to H, P, M lub K. Jeśli któreę z nich to wyświetla napis. No to teraz pozostaje wyjaśnić dlaczego tylko raz naduszę i się wyświetli bo tamten kolo nie wytłumaczył jak to działa. Skoro c2 pobiera przycisk po tym jak c1 tez pobrało to musimy 2 razy nadusić na przycisk. A tu nic! Nie ma tak! Skoro c2 obi to co c1 to czemu jak naduszę to samo zrobi co innego? Skoro za pierwszym razem jak nadusze przycisk to będę miał ' ' a potem nagle 'H'???!!! Ten kolo nie umie tłumaczyć! Mój but lepiej tłumaczy! EDIT: Zamykam temat! Sam wykombinowałem jak to zrobić aby były klawisze rozszerzone. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi