View Single Post
Old 01-01-1970, 07:00 AM   #14
Hồ sơ
myhanh
 
myhanh's Avatar
 
Tham gia ngày: Dec 2004
Cư ngụ: Love Planet
Tuổi: 43
Số bài viết: 7,404
Tiền: 0
Thanks: 2,122
Thanked 5,464 Times in 2,040 Posts
myhanh is on a distinguished road
Default

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.
__________________
Necessity is the mother of in(ter)vention.
Speak softly & carry a big stick.
My Technical Blog

thay đổi nội dung bởi: myhanh, 03-06-2008 lúc 08:59 AM.
myhanh is offline   Trả Lời Với Trích Dẫn