Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
VC Лекции PDF / VC 15 Лек Графика.pdf
Скачиваний:
37
Добавлен:
15.02.2015
Размер:
651.21 Кб
Скачать

Лекция 14

Работа с графикой

7

Все цвета, которые имеют равные соотношения первичных компонентов, проявляются в виде оттенков серого цвета.

Разложить цвет на составляющие можно с помощью макросов GetRValue, GetGValue, GetBValue.

ДИАЛОГОВОЕ ОКНО ВЫБОРА ЦВЕТА

Стандартное диалоговое окно Выбора цвета позволяет пользователю выбрать цвет из 48 цветов основной палитры, а также определить дополнительные цвета. Диалоговое окно имеет вид, показанный на рисунке.

Конструктор класса CColorDialog

Конструктор класса имеет следующий прототип:

CColorDialog ( COLORREF clrInit = DWORD , dwFlags = 0 , CWnd* pParentWnd = NULL ) ;

Параметры:

 

clrInit

первоначально выбранный цвет (по умолчанию – черный);

dwFlags

комбинация флагов, позволяющих, например, отобразить панель выбора дополнитель-

pParentWnd

ных цветов или запретить ее использование;

указатель на родительское окно.

Отображение диалогового окна. Функция DoModal

Функция DoModal, определённая в классе CColorDialog, создает и отображает диалоговое окно выбора цвета.

Синтаксис:

virtual int DoModal ( ) ;

Возвращаемое значение: IDOK или IDCANCEL – это константы, которые указывают, выбрал ли пользователь кнопку OK или Отмена.

Получение выбранного цвета. Функция GetColor

Получить выбранный пользователем цвет можно с помощью функции GetColor, определённой в классе CСolorDialog. Прототип этойфункции имеет следующий вид:

COLORREF GetColor ( ) const ;

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

Получение дополнительных цветов. Функция GetSavedCustomColors

Диалоговое окно Выбора цвета позволяет кроме основного цвета позволяет определить до 16 дополнительных значений цвета с помощью функции GetSavedCustomColors, протопит которой, имеет вид:

Синтаксис:

static COLORREF* GetSavedCustomColors () ;

Возвращаемое значение: указатель на массив из 16 RGB-цветов. Изначально каждый из элементов массива инициируется белым цветом.

Выжол Ю.А.