printКонсольный ввод-вывод coniow

printПодключение и установка параметров

Библиотека является расширенным аналогом conio из Borland C++/C++Builder

Подключение:
#include "coniow.h"
Внимание! Нельзя использовать одновременно с графической библиотекой.
Использование: скопировать исходные файлы coniow.h coniow.c в папку с проектом и добавить в проект. Заголовочный файл constream позволяет использовать некоторые возможности библиотеки в форме манипуляторов для cout.
Для корректного отображения русских букв при выполнении программы нужно щелкнуть правой кнопкой мыши по заголовку консольного окна, в контекстом меню выбрать пункт "Свойства" и установить шрифт "Lucida Console" и желаемый размер шрифта. Далее нажать кнопку OK. В XP возникает диалог с 2-мя вариантами – нужно сохранить настройки для всех окон с тем же именем, чтобы не выполнять эту настройку повторно.

void window(int left, int top, int right, int bottom);
Ограничивает область вывода.
void textattr(int newattr);
Функция позволяет установить цвета символов и фона одновременно для последующего вывода.
Для установки используйте 16 перечисленных в таблице констант для цветов и функцию to_attr, которой указываются цвет текста, цвет фона и расширенные атрибуты:
textattr(to_attr(YELLOW,BLUE,0)); /* желтые буквы на синем фоне */

-------------------------------------
Символическая     Соответствующий    
  константа          цвет            
-------------------------------------
BLACK             черный             
BLUE              синий            
GREEN             зеленый            
CYAN              морской волны           
RED               красный            
MAGENTA           сиреневый          
BROWN             коричневый         
LIGHTGRAY         светлосерый        
DARKGRAY          темносерый         
LIGHTBLUE         светлосиний      
LIGHTGREEN        светлозеленый      
LIGHTCYAN         голубой     
LIGHTRED          светлокрасный      
LIGHMAGENTA       светлосиреневый    
YELLOW            желтый             
WHITE             белый 
NO_COLOR          выводить символы, 
                  не меняя цвет на экране
-------------------------------------

-------------------------------------
Символическая     Расширенные атрибуты    
  константа                     
-------------------------------------
UNDER_LINE        Подчеркивание
UPPER_LINE        Линия сверху
LEFT_LINE         Линия слева
RIGHT_LINE        Линия справа
REVERSED_COLORS   Меняются цвета фона и текста
-------------------------------------

void textbackground(int newcolor);
Устанавливает цвет фона, используемый при выводе текста и очистке окна.
void textcolor(int newcolor);
Устанавливает цвет символов.
void _setcursortype(int type);
Устанавливает вид курсора. Варианты: _NOCURSOR (без курсора), _SOLIDCURSOR (большой), _NORMALCURSOR (обычный).
const struct text_info * gettextinfo(struct text_info *inforec);
gettextinfo заполняет структуру text_info, на которую указывает inforec, текущей видеоинформацией, если указатель не равен 0. Возвращает указатель на внутреннюю структуру с аналогичной информацией.
Структура text_info описана следующим образом:
struct text_info {
  unsigned short winleft; /* координаты области вывода */
  unsigned short wintop;
  unsigned short winright;
  unsigned short winbottom;
  unsigned short attribute;  /* атрибуты текста */
  unsigned short normattr;   /* нормальные атрибуты */
  unsigned short screenheight;      /* высота экрана */
  unsigned short screenwidht;       /* ширина экрана */
  short curx; /* x координата (колонка) в текущем окне */
  short cury; /* y координата (строка) в текущем окне */
  char title[256]; /* заголовок окна в Windows */
};
Для получения размера экрана можно написать:
int w=gettextinfo(0)->screenwidht;
int h=gettextinfo(0)->screenheight;
void settextinfo(const struct text_info *inforec);
settextinfo восстанавливает состояние экрана (координаты окна, позицию курсора и атрибуты) по видеоинформации, сохраненной в inforec с помощью функции gettextinfo. Также можно изменить размеры окна консоли и заголовок в Windows.
Пример использования:
struct text_info ti;
gettextinfo(&ti);
// действия с экраном: window/textcolor/gotoxy
settextinfo(&ti);
loading