Справочник по функциям С++. Подпрограммы классификации Подпрограммы преобразования
Скачать 3.41 Mb.
|
getfat----------------------------------------------------------------- Назначение Получает информацию из таблицы размещения фай- лов. Синтаксис #include void getfat(unsigned char drive, struct fatinfo *fatblkp); Прототип в dos.h Замечания getfat заполняет fatinfo структуру информацией из таблицы размещения файлов для заданного драйвера диска (0 = текущий, 1 = А и т.д.). fatblkp указывает на структуру типа fatinfo. структура fatinfo, заполняемая getfat, имеет следующий вид: struct fatinfo { char fi_sclus; /* секторов в кластере */ char fi_fatid; /* байт идентификатора FAT */ int fi_nclus; /* число кластеров */ int fi_bysec; /* байт в секторе */ }; Возвращаемое Нет. значение Переносимость Уникальна для MS-DOS. Смотри также getdfree, getfatd ----------------------------------------------------------------- getfatd----------------------------------------------------------------- Назначение Получает информацию из таблицы размещения фай- лов. Синтаксис #include void getfatd(struct fatinfo *fatblkp); Прототип в dos.h Замечания getfatd заполняет fatinfo структуру информацией из таблицы размещения файлов текущего драйвера. структура fatinfo, заполняемая getfatd, имеет следующий вид: struct fatinfo { char fi_sclus; /* секторов в кластере */ char fi_fatid; /* байт идентификатора ФАТ */ int fi_nclus; /* число кластеров */ int fi_bysec; /* байт в секторе */ }; Возвращаемое Нет. значение Переносимость Уникальна для MS-DOS. Смотри также getdfree, getfat ----------------------------------------------------------------- getfillpattern----------------------------------------------------------------- Назначение Копирует описанный пользователем шаблон запол- нения. Синтаксис #include void far getfillpattern(char far *upattern); Прототип в graphics.h Замечания getfillpattern копирует описанный пользователем шаблон заполнения в 8-байтовую область, на ко- торую указывает upattern. upattern указывает на последовательность из 8 байт, причем каждый байт соответствует 8 точкам растра шаблона. Каждый бит байта шаблона, уста- новленный в 1, соответствует вычерченной точке растра. Например, нижеследующий определенный пользователем шаблон заполнения соответствует "шахматной доске": char chackerboard[8] = { 0xAA, 0x55, 0xAA, 0x55, 0xAA, 0x55, 0xAA, 0x55 }; Возвращаемое Нет. значение Переносимость Данная функция работает только на IBM PC и сов- местимых моделях при наличии соответствующих графических адаптеров. Смотри также getfillsettings, setfillpattern ----------------------------------------------------------------- getfillsettings----------------------------------------------------------------- Назначение Возвращает информацию о текущих шаблоне и цвете заполнения. Синтаксис #include void far getfillsettings(struct fillsettingstype far *fillinfo); Прототип в graphics.h Замечания getfillsettings заносит в структуру filsettingstype, на которую указывает fillinfo, информацию о текущих шаблоне и цвете заполне- ния. Структура fillsettingstype описана в grafics.h следующим образом: struct getfillsettingstype { int pattern; /* текущий шаблон заполнения */ int color; /* текущий цвет }; заполнения */ Функции bar, bar3d, fillpoly, floadfill и pieslice заполняют область текущим цветом за- полнения. Всего имеется 11 предопределенных шаблонов заполнения (такие как сплошной, точеч- ный и др.). Символические имена предопределен- ных шаблонов заданы перечисленным типом данных fillpatterns в файле GRAPHICS.H (см. таблицу ниже). Кроме того, вы можете описать свой собс- твенный шаблон заполнения. Если pattern = 12 (USER_FILL), то используется определенный пользователем шаблон заполнения; во всех других случаях pattern задает номер предопределенного шаблона. Перечисление fill_patterns, описанное в graphics.h, задает имена предопределенных шаб- лонов заполнения и индикатор для определенного пользователем шаблона: ----------------------------------------------- Имя Значение Описание ----------------------------------------------- EMPTY_FILL 0 Заполняет цветом фона SOLID_FILL 1 Сплошное заполнение LINE_FILL 2 Заполняет --- LTSLASH_FILL 3 Заполняет /// SLASH_FILL 4 Заполняет толстыми /// BKSLASH_FILL 5 Заполняет толстыми \\\ LTBKSLASH_FILL 6 Заполняет \\\ HATCH_FILL 7 Заполняет редкой решеткой XHATCH_FILL 8 Заполняет частой решеткой INTERLEAVE_FILL 9 Заполняет чередующимися линиями WIDE_DOT_FILL 10 Заполняет редкими точками CLOSE_DOT_FILL 11 Заполняет частыми точками USER_FILL 12 Заполняет шаблоном пользователя ----------------------------------------------- Все шаблоны, кроме EMPTY_FILL, заполняются те- кущим цветом заполнения. EMPTY_FILL использует текущий цвет фона. Возвращаемое Нет. значение Переносимость Данная функция работает только на IBM PC и сов- местимых моделях при наличии соответствующих графических адаптеров. Смотри также getfillpattern, setfillpattern, setfillstyle Пример #include #include main() { /* требование автоопределения */ int graphdriver=DETECT, graphmode; struct fillsettingstype save; char savepattern[8]; char gray50[] = {0xAA, 0x55, 0xAA, 0x55, 0xAA, 0x55, 0xAA, 0x55}; /* инициализация графики */ initgraph(&graphdriver, &graphmod, ""); /* получить текущую установку */ getfillsettings (&save); /* если шаблон пользователя */ if (save.pattern == USER_FILL) /* то сохранить его */ getfillpattern(savepattern); /* изменить стиль заполнения */ setfillstyle(SLASH_FILL, BLUE); /* заштриховать голубой полоской */ bar( 0, 0, 100, 100); /* собственный шаблон заполнения */ setfillpattern(gray50, YELLOW); /* вычертить новую желтую полоску */ bar(100, 100, 200, 200); /* если шаблон пользователя */ if (save.pattern == USER_FILL) setfillpattern(savepattern, save.color); /* то восстановить его */ else /* иначе восстановить старый стиль */ setfillstyle(save.pattern, save.color); getche(); closegraph(); } ----------------------------------------------------------------- |