Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.02.28;
Скачать: CL | DM;

Вниз

Загрузка иконок   Найти похожие ветки 

 
DenisArd   (2008-12-15 22:39) [0]

Как в Windows CE API извлечь из .ico файла, содержащего несколько форматов иконок, иконку с заданными параметрами (глубина цвета и размер) и получить ее handle?


 
clickmaker ©   (2008-12-16 10:57) [1]

LoadImage()


 
DenisArd   (2008-12-16 15:51) [2]

В Windows CE loadImage не умеет работать с файлами, только с ресурсами загруженного приложения.


 
Sapersky   (2008-12-16 20:12) [3]

Можно вручную загрузить, формат относительно несложный.

 TIconHeader = packed record
   idReserved: Word; (* Always set to 0 *)
   idType: Word;     // 1 - icon, 2 - cursor
   idCount: Word;    (* Number of icon images *)
   (* immediately followed by idCount TIconDirEntries *)
 end;

 TIconDirEntry = packed record
   bWidth: Byte;          (* Width *)
   bHeight: Byte;         (* Height *)
   bColorCount: Byte;     (* Nr. of colors used, see below *)
   bReserved: Byte;       (* not used, 0 *)
   wPlanes: Word;   // icons - always 1, cursors - pointer X coord
   wBitCount: Word; // icons - bit count, cursors - pointer Y coord
   dwBytesInRes: Longint; (* total number of bytes in images *)
   dwImageOffset: Longint;(* location of image from the beginning of file *)
 end;

Иконки лежат в стандартном формате битмапа, сразу за картинкой 1-битная маска.
Возможно, есть какие-то готовые библиотеки...


 
Rouse_ ©   (2008-12-19 09:36) [4]

Вот этот компонент ручками разбирает формат иконки и отображает требуемый: http://rouse.drkb.ru/components.php#fwiconex
Можно плясать от него...


 
Sapersky   (2008-12-19 16:29) [5]

Иконки лежат в стандартном формате битмапа

Точнее, есть одно исключение - последний уровень детализации (256*256) в вистовских иконках, там обычно PNG.



Страницы: 1 вся ветка

Текущий архив: 2010.02.28;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.012 c
2-1261636639
ImmortalxXx
2009-12-24 09:37
2010.02.28
Помогите пожалуйста новичку нулевого уровня.


2-1261836632
Student :)
2009-12-26 17:10
2010.02.28
Чтение параметра реестра


15-1260451652
Владислав
2009-12-10 16:27
2010.02.28
Зависание системы при отладке.


15-1260893769
ocean
2009-12-15 19:16
2010.02.28
Бунт машин


2-1261750036
Андрей Пл
2009-12-25 17:07
2010.02.28
как программно прервать процесс до наступления опред. события?