png images

Xailer professional forum in English
Responder
Avatar de Usuario
orangesocks
Mensajes: 59
Registrado: Jue May 05, 2011 3:28 pm

png images

Mensaje por orangesocks »

Hi,
I would like to embed some png images as resources of my exe to be later used to populate the imagelists used by toolbars, buttons, etc.
I understand that I cannot use the BITMAP keyword in my resource file but RCDATA insted. But after that I'm lost.

Is it possibile ?
Do you have some code to share that can explain how to do it ?

Regards Giuseppe
Avatar de Usuario
jfgimenez
Site Admin
Mensajes: 5707
Registrado: Lun Abr 06, 2015 8:48 pm
Contactar:

Re: png images

Mensaje por jfgimenez »

Hi Giuseppe,

just add the image to the resource manager, as it were a bitmap. Xailer does the rest.
Image285.png
Image285.png (31.42 KiB) Visto 29087 veces
BTW, in the .rc file it's used the keyword PNG. I.e.:

MyImage PNG "MiImage.png"
José F. Giménez
[Equipo de Xailer / Xailer team]
http://www.xailer.com
http://www.xailer.info
Avatar de Usuario
orangesocks
Mensajes: 59
Registrado: Jue May 05, 2011 3:28 pm

Re: png images

Mensaje por orangesocks »

Hi Jose,
thanks. Xailer truly is amazing

Regards Giuseppe
Avatar de Usuario
orangesocks
Mensajes: 59
Registrado: Jue May 05, 2011 3:28 pm

Re: png images

Mensaje por orangesocks »

Hi Jose,
I tried your suggestion and the resources are added to the .exe but when I try to load them into an imagelist I got an error.
Here is the code I'm using to load the imagelist which works fine with BMP resources.

FUNCTION xtImageListLoad( poParent, pcaResource, pnSize )
LOCAL uElem AS USUAL
LOCAL oImgList AS OBJECT

WITH OBJECT oImgList := TImageList():New( poParent, pnSize, pnSize )
:Create()
IF ( HB_IsString( pcaResource ) )
//---------------------------------------------------------------------
// Load resource
//---------------------------------------------------------------------
:Add( pcaResource )
ELSEIF ( htIsArrayOfStrings( pcaResource ) )
//---------------------------------------------------------------------
// Load array of resources
//---------------------------------------------------------------------
FOR EACH uElem IN pcaResource
:Add( uElem )
NEXT
ENDIF
END

RETURN oImgList

Attached the screenshot of the output window of the debugger.

Thanks for you help. Regards Giuseppe
Adjuntos
screenshot.215.jpg
screenshot.215.jpg (48.66 KiB) Visto 18975 veces
Responder