Программирование видеоадаптеров CGA, EGA и VGA© Александр Фролов, Григорий ФроловТом 3, М.: Диалог-МИФИ, 1992, 287 стр. 14.9. Функция _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); } |