Показать сообщение отдельно
  #1  
Старый 23.11.2006, 08:02
NovaC NovaC вне форума
Прохожий
 
Регистрация: 13.11.2006
Сообщения: 24
Репутация: 10
По умолчанию Аналог ClrScr & KeyPressed в Delphi

День добрый!
Если кто знает помогите пожалуста!
Как в консольном приложении в Delphi реализовать
такие простые вещи как:
ClrScr т.е. очистка экрана
keypresssed : bool; т.е. нажатие кнопки
например
repeat until keypressed;
В старом добром паскале задумываться об этом не приходилось!
А в Delphi для для замены keypressed нашел только громозкие процедуры и функции с использованием:
ReadConsoleInput(GetStdHandle(STD_OUTPUT_HANDLE), IBuff, 1, IEvent);
GetNumberOfConsoleInputEvents(ConsoleInput, NumberOfEvents)

а для CLS такая процедура но она у меня не чистит экран:
procedure Cls;
var
MaxX, MaxY : Word;
Coord : TCoord;
NOAW : DWord;
begin
// Получаем дескриптор вывода (output)
ConsoleInput := GetStdHandle(STD_INPUT_HANDLE);
// Получаем максимальные размеры окна
Coord := GetLargestConsoleWindowSize(ConsoleInput);
MaxX := Coord.X;
MaxY := Coord.Y;
// Очистка экрана - заполнение его пробелами
Coord.X := 0;
Coord.Y := 0;
FillConsoleOutputCharacter(ConsoleInput, ' ', MaxX * MaxY, Coord, NOAW);
// Установка курсора в координаты X, Y :
Coord.X := 0;
Coord.Y := 0;
SetConsoleCursorPosition(ConsoleInput, Coord);
end;

НЕУЖЕЛИ НЕТ БОЛЕЕ ПОСТОГО ВАРИАНТА !?!?!?
Ответить с цитированием