Основы программирования на C++, PASCAL
Uses CRT;
Begin
CIrScr;
GoToXY(40,13);
Write('*')
End.
Используемая здесь процедура ClrScr производит очистку экрана.
Текстовое окно. Прямоугольное пространство на экране, в которое производится вывод символов, называется текстовым окном. Положение окна определяется координатами верхнего левого угла и нижнего правого угла прямоугольника. Если окно занимает весь экран, то в режиме 80 х 25 его координаты (1; 1) — (80; 25). Таким является исходное окно. Изменить положение и размер текстового окна можно с помощью процедуры
Window(Xl,Yl,X2,Y2)
Здесь аргументы — величины типа Byte; (X1, Yl) — координаты верхнего левого угла, (Х2, Y2) — координаты правого нижнего угла окна. После определения окна попытки вывода символов за его пределы оказываются безрезультатными. Повторное обращение к процедуре window с новыми параметрами отменяет предыдущее назначение.
Управление цветом. На современных цветных дисплеях типа EGA, VGA, SVGA в текстовом режиме экрана можно использовать 16 цветов.
В модуле CRT объявлены константы, имена которых представляют собой английские названия цветов, а соответствующие им значения — порядковые номера этих цветов.
Процедура назначения цвета фона:
TextBackGround(Color)
Здесь аргумент — величина типа Byte, задающая номер цвета.
Процедура назначения цвета символа:
TextColor(Color)
Если цвет фона назначается до очистки текстового окна, то после очистки окно заливается этим цветом. Если фон устанавливается после очистки экрана, то чистое окно будет иметь черный цвет (по умолчанию), а назначенный цвет фона будет устанавливаться в тех позициях, в которые выводятся символы.
Вот пример программы, в которой по очереди откроются четыре окна, и каждое из них будет залито своим фоновым цветом:
Uses CRT;
Begin
Window(1,1,40,12);
TextBackGround(White); CIrScr;
Window(41,1,80,12);
TextBackGround(Red); CIrScr;
Window(l,13,40,25);
TextBackGround(LightRed); CIrScr;
Window(41,13,80,25);
TextBackGround(Green); CirScr;
End.
По следующей программе на белом фоне в середине экрана будут выведены номера первых пятнадцати цветов. Каждый номер будет того цвета, который он обозначает.
Uses CRT;
Var I: Byte;
Begin
TextBackGround(White) ;
CIrScr;
GoToXY(l,12);
For I:=0 To 14 Do
Begin
TextColor(I);
Write(1:5) ;
End
End.
Кратко опишем еще несколько процедур управления текстовым экраном из модуля CRT. Все эти процедуры не имеют параметров.