Bài 19. Thư viện chương trình con chuẩn

Nội dung lý thuyết

BÀI 19. THƯ VIỆN CHƯƠNG TRÌNH CON CHUẨN

1. Thư viện CRT

- Thư viện CRT chứa các thủ tục liên quan đến quản lý và khai thác màn hình bàn phím của máy tính.

- Một số thủ tục trong thư viện CRT:

  • Thủ tục clrscr(): xóa màn hình.
  • Thủ tục TextColor(color): đặt màu cho chữ trên màn hình, trong đó color là hằng hoặc biến xác định màu.
  • Thủ tục TextBackground(color): đặt màu nền cho màn hình, trong đó color là hằng hoặc biến xác định màu.
  • Thủ tục GotoXY(x,y): đưa con trỏ đến vị trí cột x, dòng y của màn hình.

* Chú ý: màn hình hình văn bản gồm 25 dòng, 80 cột nên 1≤ x ≤ 80, 1 ≤ y ≤ 25.

2. Thư viện GRAPH

- Thư viện GRAPH chứa các hàm và thủ tục liên quan đến chế độ đồ họa cho phép thực hiện các thao tác cơ bản như vẽ điểm, đường, tô màu…

a. Các thiết bị và chương trình hỗ trợ đồ họa

- Màn hình có thể làm việc ở hai chế độ: chế độ văn bản và chế độ đồ họa.

- Bản mạnh điều khiển màn hình là thiết bị đảm bảo tương tác giữa bộ xử lí và màn hình để thực hiện các chế độ phân giải và màu sắc.

- Các chương trình điều khiển này nằm trong các tập tin có phần mở rộng là BGI (Borland Graphic Interface).

- Tọa độ trên màn hình đồ họa được đánh số từ 0, cột được tính từ trái sáng phải và dòng được tính từ trên xuống dưới.

b. Khởi tạo chế độ đồ họa

- Thủ tục thiết lập chế độ đồ họa:

Procedure InitGraph(var driver,mode: integer; path: string)

Trong đó:

  • Driver là số hiệu của trình điều khiển BGI. Thông thường driver được gán bằng 0.
  • Mode là số hiệu của độ phân giải
  • Path là đường dẫn đến thư mục BGI

- Ví dụ: Giả sử các tập tin có phần mở rộng là BGI đang ở thư mục C:\TP\BGI. Các lệnh để thiết lập chế độ đồ họa là:

Driver:= 0;
Initgraph(driver,mode,’C:\TP\BGI’);

=>Để chuyển về chế độ văn bản ta dùng thủ tục: CloseGraph;

c. Các thủ tục vẽ điểm, đoạn thẳng

- Thủ tục đặt màu cho nét vẽ: procedure SetColor (color: Word); 

- Thủ tục vẽ điểm: procedure PutPixel (x,y: integer;color:word); Trong đó: x và y là tọa độ của điểm cần vẽ; color là màu của điểm.

- Thủ tục vẽ đoạn thẳng: procedure Line( x1, y1, x2, y2: integer); trong đó (x1, y1) và (x2, y2) là các tọa độ của điểm đầu và điểm cuối.

- Thủ tục vẽ đoạn thẳng nối điểm hiện tại (vị trí con trỏ) với điểm có tọa độ (x, y): procedure LineTo (x, y: integer);

- Thủ tục vẽ đoạn thẳng nối điểm hiện tại với điểm có tọa độ hiện tại cộng với gia số (dx, dy): procedure LineRel (dx, dy: integer);

d. Các thủ tục và hàm liên quan đến vị trí con trỏ

- Các hàm xác định giá trị lớn nhất có thể của tọa độ màn hình X,Y:

  • function GetMaxX: integer;
  • function GetMaxY: integer;

- Thủ tục chuyển con trỏ tới tọa độ (x, y): procedure MoveTo(x, y: integer);

e. Một số thủ tục vẽ hình đơn giản

- Vẽ đường tròn có tâm (x, y), bán kính r: procedure Cricle (x, y: integer; r: word);

- Vẽ cung của elip có tâm tại điểm (x, y) với các bán kính trục Xr, Yr từ góc khởi đầu StAngle đến góc kết thúc EndAngle:
procedure Ellipse (x, y: integer ;StAngle, EndAngle, Xr, Yr: word);

- Vẽ hình chữ nhật có các cạnh song song với các trục tọa độ, (x1, y1) là tọa độ của đỉnh trái trên, (x2, y2) là tọa độ của đỉnh phải dưới: 
procedure Rectangle (x1, y1, x2, y2: integer);

3. Một số thư viện khác

- System: Trong thư viện chuẩn chứa các hàm sơ cấp và các thủ tục vào/ra mà các chương trình đều dùng tới.

- Dos: Thư viện chứa các thủ tục cho phép thực hiện trực tiếp các lệnh như: tạo thư mục, thiết lập giờ hệ thống,…

- Printer: Thư viện cung cấp các thủ tục làm việc với máy in.

4. Sử dụng thư viện

- Muốn sử dụng các thủ tục và hàm chuẩn của một số thu việc nào đó (trừ system) cần phải dùng lệnh khai báo:

uses unit1, unit2,…, unitN;

=>Trong đó: Unit1, unit2,…, unitN là tên các thư viện, được viết cách nhau bởi dấu phẩy