Tài nguyên Thư viện

Thành viên trực tuyến

15 khách và 0 thành viên

Thống kê

  • truy cập   (chi tiết)
    trong hôm nay
  • lượt xem
    trong hôm nay
  • thành viên
  • Menu Thư viện

    Gốc > Kiến thức tin học > Lập trình Pascal >

    THIẾT LẬP MÀN HÌNH ĐỒ HỌA


         Để xử lýmàn hình văn bản, bàn phím và âm thanh, Turbo Pascal viết sẵn một số thủ tục và hàm có chứa trong Unit Crt. 

    1.  Tọa độ màn hình:

         Màn hình văn bản thường gặp ở chế độ 80 cột, 25 dòng. Mỗi vị trí trên màn hình xác định bởi tọa độ cột và tọa độ dòng, chỉ chứa được một trong số 256 kí tự chuẩn của bảg mã ASCII. 

         Ví dụ :

         _ Điểm (1, 1)  nằm ở vị trí góc trên bên trái nhất của màn hình.

         _ Điểm (20, 2)  nằm ở vị trí cột thứ 20, hàng thứ 2 của màn hình. 

    2.   Một số thủ tục xử lý màn hình: 

         GotoXY(X, Y : Byte); đưa vị trí con trỏ tới tọa độ (X, Y). 

         Ví dụ sau sẽ viết ra màn hình dòng chữ  " Dong 20, Cot 20 " tại tọa độ (20, 20) :

                        Uses Crt ;

                        Begin

                        GotoXY(20, 20);

                        Write (' Dong 20, Cot 20 ') ;

                        Readln ;

                        End.         

        WhereX; WhereY;  là 2 thủ tục cho ta biết cột, dòng hiện tại của con trỏ.

        ClrScr;  xóa toàn bộ màn hình và đặt con trỏ vào vị trí góc trên, bên trái(cột 1, hàng 1). Để xóa từ vị trí con trỏ đến hết dòng(không di chuyển con trỏ), ta dùng ClrEoLn.

        DelLine;  xoá một dòng tại vị trí của con trỏ và mọi dòng ở phía dưới sẽ được dịch lên một dòng.

        InsLine;  chèn thêm một dòng trống vào vị trí của con trỏ trên màn hình. 

        Window(X1, Y1, X2, Y2);  thủ tục để vẽ một cửa sổ trên màn hình có tọa độ :

            _  Góc trên bên trái là cột X1, hàng Y1.

            _  Góc dưới bên phải là cột X2, hàng Y2. 

         Bây giờ, ta nhập chương trình sau đây vào máy để xem màu của Pascal nhảy nhót tung tăng trên màn hình. 

                        Uses Crt ;

                        Var

                           X, Y : Byte ;

                        BEGIN

                           TextBackground(Black);                (* Xóa màn hình *)

                           ClrScr ;

                           Repeat

                              X := Succ(Random(80));              (* Vẽ các cửa sổ ngẫu nhiên *)

                              Y := Succ(Random(25));

                              Window(X, Y, X + Random(10), Y + Random(8));

                              TextBackground(Random(16));   (* Tạo màu ngẫu nhiên *)

                              ClrScr ;

                           Until KeyPressed ;

                        END.


    Nhắn tin cho tác giả
    Đỗ Trung Thành @ 10:50 13/09/2009
    Số lượt xem: 2558
    Số lượt thích: 0 người
     
    Gửi ý kiến