Read and Store Icon

Category: Icons

Date: 02-16-2022

Return to Index


 
'Compilable Example:  (Jose Includes)
#Compiler PBWin 10
#Compile Exe
#Dim All
#Debug Error On
#Debug Display On
%Unicode=1
#Include "Win32API.inc"
Global hDlg,hBMP,hIcon As Dword
%ID_Graphic = 200
%ID_GraphicB = 201
%ID_GraphicC = 202
 
Function PBMain() As Long
   Local P As IconInfo,hLst As Dword, w,h As Long
   Dialog New Pixels, 0, "Icon Test",300,300,200,75, %WS_OverlappedWindow To hDlg
'-----------------------------------------------------------------
   'read icon directly into graphic control
   Control Add Graphic, hDlg, %ID_GraphicB,"", 10,10,50,50, %WS_Border
   Graphic Attach hDlg, %ID_GraphicB
   Graphic Render Icon "help.ico", (0,0)-(23,23)
'-----------------------------------------------------------------
   'read icon, save as memory bitmap
   Graphic Bitmap New 24,24 To hBMP
   Graphic Attach hBMP, 0
   Graphic Render Icon "help.ico", (0,0)-(23,23)
 
   Control Add Graphic, hDlg, %ID_Graphic,"", 70,10,50,50, %WS_Border
   Graphic Attach hDlg, %ID_Graphic
   Graphic Copy hBMP, 0
'-----------------------------------------------------------------
   'read icon, saves as memory icon (LoadImage API)
   Control Add Graphic, hDlg, %ID_GraphicC,"", 130,10,50,50, %WS_Border
   Graphic Attach hDlg, %ID_GraphicC
   hIcon = LoadImage(GetModuleHandle(""), "help.ico", %Image_Icon, 0, 0, %LR_LoadFromFile)
   GetIconInfo hIcon, P
   w = P.xHotSpot*2 : h = P.yHotSpot*2
   ImageList New Icon w,h,24,1 To hLst
   ImageList Add Icon hLst, hIcon
   Graphic ImageList (0,0), hLst, 1, 0, %ILD_Normal
   ImageList Kill hLst
   DestroyIcon hIcon
'----------------------------------------------------------------
 
   Dialog Show Modal hDlg
End Function
 
'gbs_01290
'Date: 03-10-2012


created by gbSnippets
http://www.garybeene.com/sw/gbsnippets.htm