Как очистить экран в консольном приложении?
Материал из DRKB
Как очистить экран в консольном приложении?[править | править код]
Нужно просто использовать GetConsoleScreenBufferInfo() для ввода нескольких пустых строк.
program Project1;
{$APPTYPE CONSOLE}
uses
Windows;
{$R *.RES}
var
sbi: TConsoleScreenBufferInfo;
i: Integer;
begin
Writeln('A Console Applicaiton');
Writeln('Press Enter To Clear The Screen');
GetConsoleScreenBufferInfo(GetStdHandle(STD_OUTPUT_HANDLE), sbi);
Readln;
GetConsoleScreenBufferInfo(GetStdHandle(STD_OUTPUT_HANDLE), sbi);
for i := 0 to sbi.dwSize.y do
WriteLn;
WriteLn('Press Enter To End');
ReadLn;
end.
Author: Олег Кулабухов
Source: Взято с http://delphiworld.narod.ru
ID: 02192
uses
Windows;
procedure ClearConsoleWindow;
var
ConsoleHandle: THandle;
ConsoleInfo: TConsoleScreenBufferInfo;
Coord: TCoord;
WrittenChars: DWORD;
begin
FillChar(ConsoleInfo, SizeOf(TConsoleScreenBufferInfo), 0);
FillChar(Coord, SizeOf(TCoord), 0);
ConsoleHandle := GetStdHandle(STD_OUTPUT_HANDLE);
GetConsoleScreenBufferInfo(ConsoleHandle, ConsoleInfo);
FillConsoleOutputCharacter(ConsoleHandle, ' ', ConsoleInfo.dwSize.X * ConsoleInfo.dwSize.Y, Coord, WrittenChars);
SetConsoleCursorPosition(ConsoleHandle, ConsoleInfo.dwCursorPosition);
end;
Author: Krid
Source: Взято из http://forum.sources.ru
ID: 02193