HÀM NHẬN PHÍM
Chương trình sau đây mô tả cách xây dựng hàm INKEY tạo ra mã của phím vừa bấm. Nó nhận biết được hầu hết các phím. Ngoài ra chương trình chính cũng sẽ in ra mà hình mã quét lấy từ bộ đệm bàn phím.
Khi chương trình có dùng Unit CRT, phép gán CheckBreak:=TRUE cho phép người sử dụng bấm Ctrl-Break để ngắt chương trình khi chương trình đang chạy( Không phụ thuộc vào lệnh break=on trong config.sys)
Code:
Uses CRT;
VAR
Key,Head:Word;
FUNCTION INKEY:Word;
VAR
ch:char;
Begin
ch:=ReadKey;
INKEY:=byte(ch);
If ch=#0 then
Begin
ch:=ReadKey;
INKEY:=256+byte(ch);
end;
end;
Begin
CheckBreak:=TRUE;
Clrscr;
Write(' Bam phim bat ki.');
Repeat
If Keypressed then
Begin
Clrscr;
Head:=Word((ptr(0,$41A)^)-30;
Write(#32:7,'Ky tu:',char(ptr(0,$41E+Head)^),
#32:4,'Ma Ascii:', byte(Ptr(0,$41E+Head)^),
#32:4,'Ma quet:',byte(Ptr(0,$41E+Head+1)^),
#32:4);
Key:=INKEY;
Write('INKEY:',key);
Writeln;
Writeln;
Write(#32:24,'Bam Ctrl-Break de tro ve DOS.');
end;
Until false;
End.