Язык:
Русский
English
{ Пример программы для процедуры SetWriteMode }
uses Crt, Graph;
var
Driver, Mode, I : Integer;
X1, Y1, Dx, Dy : Integer;
FillInfo : FillSettingsType;
begin
DirectVideo := False; { Выключаем режим прямой записи }
Randomize;
{ Инициализируем графику }
Driver := Detect;
InitGraph(Driver, Mode, 'X:\BP');
if GraphResult < 0 then
Halt(1);
{ Закрашиваем экран стилем фона }
GetFillSettings(FillInfo); { Получаем текущие установки закраски }
SetFillStyle(WideDotFill, FillInfo.Color);
Bar(0, 0, GetMaxX, GetMaxY);
Dx := GetMaxX div 4; { Определяем размеры прямоугольника }
Dy := GetMaxY div 4;
SetLineStyle(SolidLn, 0, ThickWidth);
SetWriteMode(XORPut); { Режим XOR для рисования }
{ Продолжаем рисовать до нажатия клавиши }
repeat
X1 := Random(GetMaxX - Dx);
Y1 := Random(GetMaxY - Dy);
Rectangle(X1, Y1, X1 + Dx, Y1 + Dy); { Рисуем }
Delay(10); { Ждём }
Rectangle(X1, Y1, X1 + Dx, Y1 + Dy); { Стираем }
until KeyPressed;
ReadLn;
CloseGraph;
end.
var
Driver, Mode, I : Integer;
X1, Y1, Dx, Dy : Integer;
FillInfo : FillSettingsType;
begin
DirectVideo := False; { Выключаем режим прямой записи }
Randomize;
{ Инициализируем графику }
Driver := Detect;
InitGraph(Driver, Mode, 'X:\BP');
if GraphResult < 0 then
Halt(1);
{ Закрашиваем экран стилем фона }
GetFillSettings(FillInfo); { Получаем текущие установки закраски }
SetFillStyle(WideDotFill, FillInfo.Color);
Bar(0, 0, GetMaxX, GetMaxY);
Dx := GetMaxX div 4; { Определяем размеры прямоугольника }
Dy := GetMaxY div 4;
SetLineStyle(SolidLn, 0, ThickWidth);
SetWriteMode(XORPut); { Режим XOR для рисования }
{ Продолжаем рисовать до нажатия клавиши }
repeat
X1 := Random(GetMaxX - Dx);
Y1 := Random(GetMaxY - Dy);
Rectangle(X1, Y1, X1 + Dx, Y1 + Dy); { Рисуем }
Delay(10); { Ждём }
Rectangle(X1, Y1, X1 + Dx, Y1 + Dy); { Стираем }
until KeyPressed;
ReadLn;
CloseGraph;
end.