Página 1 de 1

png images

Publicado: Sab Nov 07, 2020 5:55 pm
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

Re: png images

Publicado: Dom Nov 08, 2020 6:56 pm
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 28608 veces
BTW, in the .rc file it's used the keyword PNG. I.e.:

MyImage PNG "MiImage.png"

Re: png images

Publicado: Lun Nov 09, 2020 4:05 pm
por orangesocks
Hi Jose,
thanks. Xailer truly is amazing

Regards Giuseppe

Re: png images

Publicado: Mié Dic 23, 2020 5:34 pm
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