Console class trong C# (phần 2)

Phương thức ReadKey

Phương thức Console.ReadKey không chờ cho người dùng ấn enter trước khi hoàn thành. Nó chỉ chờ cho một ấn nút đơn.
Nên nếu bạn muốn làm thứ gì đó như “Nhấn bất cứ nút nào để tiếp tục…”, bạn có thể sử dụng Console.ReadKey:

Console.WriteLine(“Press any key when you’re ready to begin.”);
Console.ReadKey();

Code này có một vấn đề nhỏ. Nếu một chữ được gõ, chữ đó sẽ vẫn được thể hiện trên màn hình. Có một cách đi quanh
qua nó. Có 2 phiên bản của phương thức ReaKey (gọi là “overloads”, nhưng chúng sẽ đề cập chi tiết hơn trong học
phần sau). Một phiên bản, thể hiện ở trên, không có các đầu vào. Phiên bản khác có một đầu vào dạng của nó là bool,
cái chỉ ra liệu text có bị gạch một đường chặn ngang hay không. Nếu nó bị gạch một đường chặn ngang, nó sẽ không
được hiển thị trong console window. Sử dụng phiên bản này trông như cái sau:

Console.WriteLine(“Press any key when you’re ready to begin.”);
Console.ReadKey(true);

Thay đổi các màu sắc

Một vài thứ tiếp theo chúng ta sẽ nói về không phải là các phương thức mà là các đặc tính. Có các sự khác nhau
quan trọng giữa các đặc tính và các biến, nhưng cho bây giờ, nó là hợp lí cho chúng ta chỉ nghĩ về chúng như thể
chúng là các biến.
Class Console cung cấp các biến cái lưu giữ các màu sắc nó sử dụng cho hiển thị text. Chúng ta không gắn với black
và white. Cái này được minh họa tốt nhất với một ví dụ:

Console.BackgroundColor = ConsoleColor.Yellow;
Console.ForegroundColor = ConsoleColor.Black;

Sau khi gán các giá trị mới váo hai biến này, console sẽ bắt đầu sử dụng black text trên một yellow background.
BackgroundColor và ForegroundColor cả hai là biến thay vì các phương thức, nên chúng ta không sử dụng cặp dấu
( ) như chúng ta đã làm trong quá khứ. Các biến này thuộc về class console, chúng ta truy cập chúng qua
Console.VariableName thay vì chỉ tên biến như các biến khác chúng ta đã sử dụng. Các dòng này gán một giá trị mới
vào các biến đó, mặc dù chúng ta chưa bao giờ thấy bất cứ thứ gì như ConsoleColor.Yellow hay ConsoleColor.Black
trước kia. ConsoleColor là một enumeration, cái chúng ta sẽ học nhiều hơn trong học phần sau. Phiên bản ngắn là
rằng một enumeration định nghĩa một tập các giá trị trong một bộ sưu tập và cung cấp mỗi cái một cái tên. Yellow
và Black là các tên của 2 vật trong bộ ConsoleColor.

Chia sẻ