Программирование видеоадаптеров CGA, EGA и VGA

       

Функция _settextcolor()


Функция устанавливает цвет символов, выводимых функцией _outtext():

short _settextcolor( short index );

Параметр содержит индекс нового цвета символов из таблицы 15.1. Если к номеру индекса прибавить 0x10, то выводимые символы будут мигать.

Функция возвращает предыдущий индекс цвета символов.

Ниже приведен пример использования функций определения и установки цвета фона и цвета текста _getbkcolor(), _setbkcolor(), _gettextcolor(), _settextcolor():

// Пример использования функций _getbkcolor(), _setbkcolor(), // _gettextcolor(), _settextcolor().

#include <conio.h> #include <stdio.h> #include <graph.h>

void main(void) { char buffer[80]; short text_color, old_text_color; long background_color, old_background_color; struct rccoord old_pos;

// сохраняем текущие цвета символов и фона, // а также положение курсора

old_text_color = _gettextcolor(); old_background_color = _getbkcolor(); old_pos = _gettextposition();

// очищаем экран

_clearscreen( _GCLEARSCREEN );

// устанавливаем по очереди первые 25 из 32 возможных цветов фона

for(background_color = 0; background_color < 26; background_color++) { _setbkcolor(background_color ); _settextposition((short)background_color, 1); _settextcolor(_BRIGHTWHITE); sprintf(buffer, "Фон: %3d. Текст:", background_color); _outtext(buffer); // устанавливаем по очереди первые 23 из 32 возможных цветов текста

for(text_color = 0; text_color < 24; text_color++) { _settextcolor(text_color); sprintf(buffer, " %d", text_color); _outtext(buffer); } } getch();

// восстанавливаем цвета символов и фона, // а также позицию курсора

_settextcolor(old_text_color); _setbkcolor(old_background_color); _clearscreen(_GCLEARSCREEN); _settextposition(old_pos.row, old_pos.col); }



Содержание раздела