Работа с регионами в Visual C++
| Категория реферата: Рефераты по информатике, программированию
| Теги реферата: доклады о животны, мировая торговля
| Добавил(а) на сайт: Jeventov.
Предыдущая страница реферата | 1 2 3 4 5 6 7 8 9
Как видно из кода, сперва создаётся квадратный регион такого же размера как и битмап, переданный в функцию как параметр. Затем происходит сканирование каждого пикселя и, если находится пиксель такого же цвета как и указанный, то этот пиксель исключается из региона.
Для демонстрации вышеописанного алгоритма была создана утилита RegionCreator, которая представляет собой консольное приложение работающее с графическими файлами.
Скачать RegionCreator - 19Кб
Запускается эта утилитка следующим образом:
regioncreator < bitmap.bmp > < r > < g > < b >
bitmap.bmp: сам битмап
r,g,b : прозрачный цвет (в десятичном виде: 255 255 255)
Загрузка сложных регионов
После того, как битмап будет обработан утилиткой, его можно поместить в приложение как ресурс и загрузить следующим образом:
// ищем ресурс для нашего скина.
HRSRC hrSkin = FindResource(hInstance, MAKEINTRESOURCE(IDB_SKIN),"BINARY");
if (!hrSkin) return false;
// загружаем стандартный "BINARY" ресурс.
LPRGNDATA pSkinData = (LPRGNDATA)LoadResource(hInstance, hrSkin);
if (!pSkinData) return false;
// создаём регион.
HRGN rgnSkin = ExtCreateRegion(NULL, SizeofResource(NULL,hrSkin), pSkinData);
// освобождаем выделенный ресурс
FreeResource(pSkinData);
После этого, регион достаточно будет прицепить к окну. И не забудьте удалить регион перед завершением приложения командой DeleteObject(rgnSkin).
В заключении, неплохо было бы заключить весь вышеприведённый материал в класс, чтобы код удобнее читался:
Удачи!
Скачали данный реферат: Тамахин, Уголев, Poliksenija, Пузанов, Jaroshenko, Лялюшкин, Brezhnev.
Последние просмотренные рефераты на тему: сочинение на тему зима, діяльність реферат, скачать доклад, онегин сочинение.
Категории:
Предыдущая страница реферата | 1 2 3 4 5 6 7 8 9