C++ >>>
WinAPI
Библиотека ImageList
Copyright (c) 2004 BOBKA
Полезные дополнительные функции обработки ImageList, а так же иконок.
Одним прекрасным днем, когда был закончен очередной проект и получено тех.
задание на новый, у меня всплыла на реализацию мысля упорядочить все используемые
функции и контролы. Ну и заодно поделиться с вами нароботками.
Предлагаю на ваше обозрение библиотеку функций
ImageListEx, которые позволят значительно улучшить внешний вид
разрабатываемого приложения, не создавая множества разных иконок.
Область применения - контролы, использующие иконки и имайджлисты. Т.к. на
данный момент практически не осталось контролов, которые б не использовали
имайджлист, то область применения неограничена.
В библиотеке (пока) пять функций:
Для работы с иконками: |
|
Icon_CopyAsGreyScale |
- создаёт копию иконки в оттенках серого цвета |
|
Icon_CopyAsBlend50 |
- создаёт копию иконки осветлённую на 50% |
|
и имайджлистом: |
|
ImageList_CopyAsGreyScale |
- создаёт копию в оттенках серого цвета |
|
ImageList_CopyAsBlend50 |
- создаёт копию осветлённую на 50% |
|
ImageList_CopyAsDisabled |
- создаёт копию осветлённую на 50% и в оттенках серого |
Хотя на первый взгляд покажется, что их мало, но они позволяют определить
большинство состояний контролов (их элементов).
Возьмем, к примеру, кнопку из Windows XP. Появившееся сообщение BCM_SETIMAGELIST
позволяет задать кнопке иконки на каждое из состояний посредством имайджлиста.
Кстати, удобная вещь, подобного раньше можно было добиться лишь используя
оунердрав. Теперь об этом даже и не вспоминают.
А рисование бесконечного количества значков для тулбара! Стоит неправильно
поставить единственную точку но рисунке - и в неактивном режиме страшно
взглянуть на это.
Не буду здесь разбирать каждую функцию - их использование дано в примерах, а их
исходный текст расписан достаточно подробно.
При использовании этих функций, приложения одинаково хорошо выглядят и в ВинХР, и
в более ранних версиях.
Скачать: Библиотеку функций ImageListEx (2,8
кБ)
Скачать: Пример для Button'а под ВинХР (11,8
кБ)
Скачать: Пример для ToolBar'а под Вин98 и круче (12
кБ)
Все примеры под VS 6 и VS.NET
Приятной разработки программ с удобным интерфейсом!
С уважением BOBKA.
|