Мерцание при обновлении экрана в модуле crt - Free Pascal

  1. Здравствуйте, я столкнулся с проблемой. Я решил сделать ascii-скроллер в консоли при помощи модуля crt. Но вот проблема - практически все мерцает. Что с этим можно сделать? Пытался увеличивать задержку, но это не помогает.


textual

Код к задаче: «Мерцание при обновлении экрана в модуле crt - Free Pascal»

program TestWinAPI;
 
uses
  Windows;
 
var
  hConsoleOutput: HANDLE; {A handle to the console screen buffer.}
  hConsoleInput:  HANDLE; {A handle to the console screen buffer.}
 
  function InitConsole: boolean;
  begin
    hConsoleOutput := GetStdHandle(STD_OUTPUT_HANDLE);
    hConsoleInput := GetStdHandle(STD_INPUT_HANDLE);
    //    ScreenBuffer :=GetConsoleScreenBuffer
    InitConsole := (hConsoleOutput <> INVALID_HANDLE_VALUE) and
      (hConsoleInput <> INVALID_HANDLE_VALUE);
  end;
 
  function GoToXY(X, Y: SHORT): boolean;
  var
    dwCursorPosition: COORD;
  begin
    dwCursorPosition.X := X;
    dwCursorPosition.Y := Y;
    GoToXY := SetConsoleCursorPosition(hConsoleOutput, dwCursorPosition);
  end;
 
begin
  InitConsole;
  GoToXY(5, 5);
  writeln('text 5 5');
  GoToXY(15, 15);
  writeln('text 15 15');
  readln;
end.

СДЕЛАЙТЕ РЕПОСТ

13   голосов, оценка 4.154 из 5



Похожие ответы
  1. Пользователь вводит n чисел.Вывести количество введенных отрицательных ,равных 0 , и в диапазоне от 1 до 1024. После этого если вводится символ "J" или "L", случится выход из программы, или -- исполнение программы повторяется.

  1. Есть ли такая функция которая при вводе неправильного значения начинала программу заново?

  1. : Написать программы с использованием - условного оператора, - логической переменной, определяющие расположение точки А(х,у) относительно заштрихованной области: принадлежит области или не принадлежит.

  1. Хелпуйте) 0) Надо вычислить сумму квадратов элементов, принадлежащих промежутку (E,F] 1) Вычислить сумму элементов t-ого столбца (t через readln) В совокупности с этим кодом)

  1. Пожалуйста, помогите переделать эту программу так, что бы она определяла 2 элемента с наименьшими значениями и присваивала значения максимального элемента, расположенным между ними найденными значениями Спасибо огромное заранее:3

  1. Дано символьный файл f. Переписать компоненты файла f в файл g, заменив при этом каждый восклицательный знак точкой.

  1. При компиляции выдаёт ошибку "Syntax error "Begin" expected but ";" found" в блоке

  1. Нужно было написать программу, которая выбирает определенные числа из множества Х в множество Y (нечетные или делящиеся на 17) . Ввод и вывод происходит в главной программе.

  1. Добрый вечер. Задание: Найти команду, которая выиграла, но при этом в какой-то промежуток времени игры проигрывала.(Т.е. находим выигравшую команду, и проверяем, если хоть раз она проигрывала на протяжении игры). Вопрос: Ведь мы не знаем к какой команде принадлежит игрок забивший гол на такой-то минуте, чего-то я не понимаю, как это сделать. Будьте добры, помогите. Спасибо. Пользовательский модуль: