Здравствуйте, уважаемые подписчики. Перед вами очередной выпуск рассылки "WinAPI
на русском".
Сайт рассылки: http://www.bcbdev.ru. Материалы по Win32 API, C++Builder.
Раздел "WinAPI": http://www.bcbdev.ru/winapi.htm
Раздел "C++Builder": http://www.bcbdev.ru/cbuilder.htm
Раздел "Примеры кода": http://www.bcbdev.ru/codesamples.htm
Раздел "MSDN по-русски": http://www.bcbdev.ru/msdn/index.php
Обновления на сайте
В раздел Примеры кода добавился пример "Всплывающие подсказки в ListView при
наведении мыши на элемент списка".
Перевод
Сегодня вашему вниманию представлен перевод функции ChooseColor.
ChooseColor
Функция ChooseColor создает диалоговое окно выбора цвета.
BOOL ChooseColor(
LPCHOOSECOLOR lpcc
);
Параметры
lpcc – указатель на структуру типа CHOOSECOLOR, которая содержит информацию,
используемую для инициализации диалогового окна. Когда функция ChooseColor завершается,
эта структура содержит информацию о выборе цвета пользователем.
Возвращаемые значения
Если пользователь нажимает кнопку ОК диалогового окна, то возвращается ненулевое
значение. Член rgbResult структуры типа CHOOSECOLOR содержит RGB-значение цвета,
выбранного пользователем.
Если пользователь отменяет выбор цвета, или закрывает диалоговое окно, или происходит
ошибка, то возвращается нуль. Для получения дополнительной информации об ошибке
вызовите функцию CommDlgExtendedError, которая может вернуть одно из следующих
значений:
CDERR_DIALOGFAILURE
CDERR_FINDRESFAILURE
CDERR_MEMLOCKFAILURE
CDERR_INITIALIZATION
CDERR_NOHINSTANCE
CDERR_NOHOOK
CDERR_LOADRESFAILURE
CDERR_NOTEMPLATE
CDERR_LOADSTRFAILURE
CDERR_STRUCTSIZE
CDERR_MEMALLOCFAILURE
Комментарии
Диалоговое окно выбора цвета не поддерживает палитр. Выбор цветов, предоставляемых
диалоговым окном, ограничен системными цветами и размытыми (dithered) версиями
этих цветов.
Вы можете предоставить функцию-ловушку (хук) CCHookProc для диалогового окна
выбора цвета. Функция-ловушка может обрабатывать сообщения, отправленные диалоговому
окну. Для установки ловушки установите флаг CC_ENABLEHOOK в значении члена Flags
структуры типа CHOOSECOLOR и укажите адрес функции в значении члена lpfnHook
структуры.
Windows 95/98/Me: ChooseColorW поддерживается Microsoft® Layer for Unicode (MSLU).
Для его использования вы должны добавить несколько файлов в ваше приложение,
как указано в "Microsoft Layer for Unicode on Windows 95/98/Me Systems".
Требования
Заголовок: объявлена в Commdlg.h, подключать Windows.h.
Библиотека импорта: Comdlg32.lib.
Минимальная ОС: включена в Windows 95, Windows NT 3.51.
См. также
CCHookProc, CHOOSECOLOR, CommDlgExtendedError.
Справочник по WinAPI: http://www.bcbdev.ru/winapi/win32api.exe
Справочник по WinAPI (zip-версия): http://www.bcbdev.ru/winapi/win32api.zip
Дружественная рассылка "Программирование на WinAPI": http://subscribe.ru/catalog/comp.soft.prog.russianmsdn
С уважением,
ведущий рассылки
Тарас Сорока.
mailto:stathome@rol.ru