Mais en redimensionnant les icônes avec ResizeImage() en 16x16, ca ne fonctionne pas.
Le code qui suit permet de vérifier.
Pour afficher les images redimensionnéés, j'ai utilisé UseImage(#Image) et ca m'affiche des carré de 16x16 noirs
Mais si j'utilise le handle retournée par Catchimage, j'ai l'image qui s'affiche telle quelle était lors de sa création; cela semble vouloir dire que resizeimage génère un autre handle (?)
Ai-je bien utilisé la commande resizeimage ?
Code : Tout sélectionner
Enumeration
#MainWindow
#Image_Position_32_32
#Image_Croix_48_48
#Image_Gadget_Position_32_32
#Image_Gadget_Croix_48_48
#Image_Gadget_Position_16_16
#Image_Gadget_Croix_16_16
#TextGadget1
#TextGadget2
EndEnumeration
;- Programme principal
If OpenWindow(#MainWindow, 100, 150, 300, 300, #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_ScreenCentered, "Images")
If CreateGadgetList(WindowID())
;- les icônes
Position = CatchImage(#Image_Position_32_32, ?Icone_Preference)
Croix = CatchImage(#Image_Croix_48_48, ?Icon_Croix)
;- les ImagesGadget normale
ImageGadget(#Image_Gadget_Position_32_32, 40, 50, 0, 0, Position)
UseImage(#Image_Position_32_32)
Debug ImageWidth()
ImageGadget(#Image_Gadget_Croix_48_48, 140, 50, 0, 0, Croix)
UseImage(#Image_Croix_48_48)
Debug ImageWidth()
TextGadget(#TextGadget1, 40, 120, 200, 25,"ImageGadget et commande Catchimage")
;- les Images redimensionnées en 16x16 avec ResizeImage()
ResizeImage(#Image_Position_32_32, 16, 16)
UseImage(#Image_Position_32_32)
Debug ImageWidth()
ImageGadget(#Image_Gadget_Position_16_16, 40, 200, 0, 0, UseImage(#Image_Position_32_32))
; ImageGadget(#Image_Gadget_Position_16_16, 40, 200, 0, 0, Position)
ResizeImage(#Image_Croix_48_48, 16, 16)
UseImage(#Image_Croix_48_48)
Debug ImageWidth()
ImageGadget(#Image_Gadget_Croix_16_16, 140, 200, 0, 0, UseImage(#Image_Croix_48_48))
; ImageGadget(#Image_Gadget_Croix_16_16, 140, 200, 0, 0, Croix)
TextGadget(#TextGadget2, 40, 270, 240, 25,"ImageGadget après utilisation de ResiseImage()")
;- Boucle evenements
Repeat
Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf
EndIf
End
DataSection
Icone_Preference :
Data.l $00010000, $20200002, $00000010, $02E80000, $00260000, $10100000
Data.l $00000010, $01280000, $030E0000, $00280000, $00200000, $00400000
Data.l $00010000, $00000004, $02800000, $00000000, $00000000, $00000000
Data.l $00000000, $00000000, $00000000, $80000080, $80000000, $00800080
Data.l $00800000, $80800080, $80800000, $C0C00080, $000000C0, $FF0000FF
Data.l $FF000000, $00FF00FF, $00FF0000, $FFFF00FF, $FFFF0000, $000000FF
Data.l $00000000, $00000000, $00000000, $00000000, $00000000, $00000000
Data.l $00000000, $00000000, $00000000, $00000000, $00000000, $00000000
Data.l $FF080000, $000000F0, $00000000, $00000000, $FB8B0000, $0000F0FF
Data.l $00000000, $00000000, $BFBF0800, $00B0FFFB, $00000000, $00000000
Data.l $FBFB0B00, $F0FFFFFF, $00000000, $00000000, $BFBF8F00, $FFBFBFBF
Data.l $000000B0, $00000000, $F3FBFB00, $FFFFFB8B, $0000B0FF, $00000000
Data.l $B8BFBF08, $BFBF8888, $00B0FFBF, $00000000, $83FBFB0B, $FF8B8B87
Data.l $B0FFFFFF, $00000000, $BFBFBF8F, $B83F3838, $FFFFFBBF, $000000B0
Data.l $FB83FBFB, $83FB83FB, $BFFFFF8B, $080070FF, $3878BFBF, $7FB8BFBF
Data.l $FFBFBF87, $0B0070FF, $878BFBFB, $8BFB8B8B, $FB8F838F, $8F0000F7
Data.l $B8B8BFBF, $B8BF3878, $FF883F38, $FB000070, $F3FB8BFB, $FB888783
Data.l $FB8BF3FB, $BF080070, $BFB878B8, $7838B8BF, $F7FFF8BF, $FB0B0000
Data.l $8B878BF3, $77F3FBFB, $F7FBFB88, $BF8F0000, $38B8B8BF, $B8BFBF7F
Data.l $70FFBF38, $FB8B0000, $83FBFBFB, $FBFB8B8B, $70FBFBF3, $BF770000
Data.l $87B8BFBF, $BF3F38BF, $00B7BFBF, $77000000, $FBFBFBFB, $8B87FBF3
Data.l $00F7FB8B, $00000000, $BFBFBF77, $78B738BF, $0070BFBF, $00000000
Data.l $FBFB7700, $83FBFBFB, $0070FBFB, $00000000, $BF770000, $BFBFBFBF
Data.l $0000B7BF, $00000000, $77000000, $FBFBFBFB, $0000F7FB, $00000000
Data.l $00000000, $BFBFBF77, $000070BF, $00000000, $00000000, $FBFB7700
Data.l $000070FB, $00000000, $00000000, $BF770000, $000000B7, $00000000
Data.l $00000000, $77000000, $00000070, $00000000, $00000000, $00000000
Data.l $00000000, $FFFF0000, $FFFFFFFF, $87FFFFFF, $01FFFFFF, $00FEFFFF
Data.l $00FCFF7F, $00FCFF1F, $00F8FF07, $00F8FF01, $00F07F00, $00F01F00
Data.l $00E00700, $00E00100, $00C00100, $00C00100, $00800300, $00800700
Data.l $00000700, $00000F00, $00000F00, $00001F00, $00001F00, $00C03F00
Data.l $00F03F00, $00FC7F00, $00FF7F00, $C0FFFF00, $F0FFFF00, $FCFFFF01
Data.l $FFFFFF01, $FFFFFF03, $FFFFFFC7, $0028FFFF, $00100000, $00200000
Data.l $00010000, $00000004, $00C00000, $00000000, $00000000, $00000000
Data.l $00000000, $00000000, $00000000, $80000080, $80000000, $00800080
Data.l $00800000, $80800080, $C0C00000, $808000C0, $00000080, $FF0000FF
Data.l $FF000000, $00FF00FF, $00FF0000, $FFFF00FF, $FFFF0000, $000000FF
Data.l $00000000, $00000000, $00000000, $00000000, $0000B00F, $00000000
Data.l $00F0FB0B, $00000000, $B0BFBFBF, $00000000, $FBFB88FB, $0F0000F0
Data.l $BF88BFBF, $0B00B0BF, $88FB8BF8, $BF0080FB, $BF8FB8BF, $FB0000B8
Data.l $8BF8FB88, $8F0800F8, $BFBF88BF, $08000080, $FB88FB8B, $00000080
Data.l $B8BF8F08, $00000000, $F88B0800, $00000000, $80080000, $00000000
Data.l $00000000, $FFFF0000, $FFF90000, $7FF00000, $1FF00000, $07E00000
Data.l $01E00000, $00C00000, $01C00000, $03800000, $03800000, $07800000
Data.b 0, 0, -32, 7, 0, 0, -8, 15, 0, 0, -2, 15, 0, 0, -1, -97, 0, 0, -1
Data.b - 1, 0, 0
Icon_Croix :
Data.l $00010000, $20200001, $00000004, $02E80000, $00160000, $00280000
Data.l $00200000, $00400000, $00010000, $00000004, $02000000, $00000000
Data.l $00000000, $00100000, $00000000, $00000000, $00000000, $80000080
Data.l $80000000, $00800080, $00800000, $80800080, $C0C00000, $808000C0
Data.l $00000080, $FF0000FF, $FF000000, $00FF00FF, $00FF0000, $FFFF00FF
Data.l $FFFF0000, $000000FF, $00000000, $00000000, $00000000, $77070000
Data.l $77777777, $77777777, $77777777, $77077077, $77777777, $77777777
Data.l $77777777, $77077077, $77779779, $77777777, $77777777, $77077077
Data.l $77977979, $77777777, $77777777, $77077077, $77977779, $77777777
Data.l $77777777, $77077077, $77799777, $77777377, $77777777, $77077077
Data.l $97997977, $77777777, $77777777, $77077077, $97797777, $77777777
Data.l $77777777, $77077077, $99777777, $77777777, $77777777, $77077077
Data.l $79777777, $77779799, $77773777, $77077077, $79777777, $77979977
Data.l $99997777, $77077077, $77777777, $99797797, $79779999, $77077097
Data.l $77377777, $79777797, $99999999, $77077077, $77777777, $99777799
Data.l $77777797, $77077077, $77777777, $77797799, $77777777, $77077077
Data.l $77777777, $77999779, $77773777, $77077077, $77777777, $77979979
Data.l $77777777, $77077077, $37777777, $77779977, $77777777, $77077077
Data.l $77777777, $77779977, $77777777, $77077077, $77777777, $77779979
Data.l $77777777, $77077077, $77777777, $77777979, $77777777, $77077077
Data.l $77777777, $77777999, $77777777, $77077077, $77777777, $77777999
Data.l $77777777, $77077077, $77777777, $77777999, $77777777, $77077077
Data.l $77777777, $77779779, $77777777, $77077077, $77777777, $77777777
Data.l $77777777, $77077077, $77777777, $77777777, $77777777, $00007077
Data.l $00000000, $00000000, $00000000, $00000000, $70700000, $70707070
Data.l $00007070, $00000000, $00070000, $00077070, $00007077, $00000000
Data.l $00000000, $00000000, $00000000, $00000000, $00000000, $00000000
Data.l $00000000, $00000000, $00000000, $00000000, $00000000, $00000000
Data.l $00000000, $00000000, $00000000, $00000000, $00000000, $00000000
Data.l $00000000, $00000000, $00000000, $00000000, $00000000, $00000000
Data.l $00000000, $00000000, $00000000, $00000000, $00000000, $00000000
Data.b 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
EndDataSection