Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

На чистом API програмно дорисовать к иконке,на иконку есть HICON [D3, D4, D6, Win2k]


LKBlack ©   (2002-06-27 10:33:00) 

Есть иконка загруженная (то-есть ее HICON), как мне программно дорисовать чего-нибудь на ней, а то я не могу разобраться. Нужно на чистом API без всяких Дельфовых TBitmap... Мастера WinAPI помогите.
Также нужно разобраться как создавать иконку "с нуля". параметры иконки лучше чтобы для любых, но сейчас нужно для таких 16х16х16.
Замучался я с этими And и Xor планами, объясните подоходчивей, а то за два дня часов 20 угробил а ничего не выходит.


valery_f   (2002-06-27 12:17:00) [1]

Иконки и курсоры создаются "с нуля" посредством CreateIcon. Рисуется она в два захода: 1) "And" маска определяет прозрачную часть иконки (сбрасывает в черное все непрозрачные части), 2) поверх этого рисуется "xor" маска (собственно изображение). Соответственно, "and" маска - это битовый массив (0 - очищаем, 1 - оставляем как есть), а "xor" маска - собственно изображение иконки, где прозрачная часть должна быть черной. Посему "xor" маска является битмапом с нужным количеством цветов, а "and" маска - всегда черно-белая (1 бит на пиксел).

Получить маски существующей иконки по хэндлу можно через GetIconInfo.


Наверх

Титульная страница Поиск, карта сайта Написать письмо