Форум программистов, компьютерный форум, киберфорум
PascalABC.NET
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
0 / 0 / 1
Регистрация: 12.01.2017
Сообщений: 104
1

Буферизация вывода в консоли

17.08.2017, 03:20. Показов 1784. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Нужно каким-то образом вывести весь текст в буфер, чтобы потом разом вывести в консоль. Текст состоит из большого количества блоков разного цвета фона. Такое вообще возможно на Паскале?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.08.2017, 03:20
Ответы с готовыми решениями:

Двойная буферизация консоли
У меня есть консольная программа(что-то типа игры) с картой, когда эта карта воспроизводится во...

Буферизация вывода
При выключенной буферизации вывода в php, будет ли браузер ждать, пока прийдет весь документ, а...

Буферизация вывода
Доброй ночи всем, задумался вот над каким вопросом: В PHP существуют функции буферизации вывода,...

Создание логики игры и двойная буферизация консоли
У меня есть консольная игра (змейка). Хотелось бы усовершенствовать ее, а именно : убрать мерцания,...

1
Эксперт Pascal/Delphi
2386 / 1298 / 1492
Регистрация: 29.08.2014
Сообщений: 4,661
17.08.2017, 13:19 2
Лучший ответ Сообщение было отмечено Kujivunia как решение

Решение

https://docs.microsoft.com/en-... attributes

и тут Работа с консольным экранным буфером, C++, C#

Добавлено через 1 час 23 минуты
из последней темы как-то изобразил(чтобы сразу):
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
uses System;
 const GENERIC_READ = $80000000;
        GENERIC_WRITE = $40000000;
    
function CreateConsoleScreenBuffer(dwDesiredAccess:integer;
                                 dwShareMode:integer;
                                 secutiryAttributes:IntPtr;
                                 Flags:integer;
                                 screenBufferData:IntPtr):IntPtr; external 'kernel32.dll';
function SetConsoleActiveScreenBuffer(hConsoleOutPut:IntPtr):IntPtr;external 'kernel32.dll';
function SetConsoleTextAttribute(hConsoleOutPut:IntPtr;wAttributes:word):boolean;external 'kernel32.dll';
 
function WriteConsole(hConsoleOutput:IntPtr; 
                      lpBuffer:string;
                      nNumberOfCharsToWrite:integer; 
                      var lpNumberOfCharsWritten:integer;
                      lpReserved:IntPtr):boolean; external 'kernel32.dll';
 
begin
  var ptr:=CreateConsoleScreenBuffer(GENERIC_READ or GENERIC_WRITE, $3, IntPtr.Zero, 1, IntPtr.Zero);
  var c:=0;
  var t:IntPtr;
  for i:byte:=0 to 255 do begin
    SetConsoleTextAttribute(ptr, i);
    WriteConsole(ptr,format('{0,4}',i),4,c,t);
  end;  
  SetConsoleActiveScreenBuffer(ptr);
  readln;
end.
Добавлено через 13 минут
если не хватает экранного буфера, то
Pascal
1
2
3
4
5
6
uses Crt;
begin
  SetBufferSize(140,2001);
  for i:integer:=1 to 2000 do writeln(i);
  readln;
end.
3
17.08.2017, 13:19
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.08.2017, 13:19
Помогаю со студенческими работами здесь

Буферизация вывода в консоль, и цветной вывод в консоль
Потребовалось реализовать цветной вывод массивов в консоль(некоторые значения выделить зеленым)....

Ограничения вывода в консоли
Здравствуйте! Скажите пожалуйста, почему при выводе в консоль цикла на, к примеру, 1000 итераций...

Перехват вывода консоли
Подскажите, как можно реализовать следующую задачу? По ShellExecute запускается консольная...

Перенаправление вывода с консоли
Здравствуйте! Пытаюсь вот разобраться с перенаправлением вывода с консоли... А точнее, хочу...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru