j'ai testé plein de petite chose pour encadrer une image dans une imagegadget.
Ce que je voudrais c'est un cadre plat (non enfoncé non surélevé) mais je ne suis pas parvenu à trouver.
Je souhaite ne pas redessiner sur l'image avec les fonctions PB ou API.
J'utilise ce code du forum anglais mais qui donne un cadre surélevé :
Code : Tout sélectionner
;//retrouve l'état du bouton et encadre ou non l'image
;// mémorise les données du bouton de la toolbar de la rebar des images
Protected zz.TBBUTTON
;// #Button_EncadrerImage = index 1
If SendMessage_(GLB_hToolBar_ContainerImage, #TB_GETBUTTON, 1, @zz)
Select zz\fsState & (#TBSTATE_CHECKED|#TBSTATE_ENABLED)
Case (#TBSTATE_CHECKED|#TBSTATE_ENABLED)
;// On ajoute la bordure au Gadget
SetWindowLongPtr_(GadgetID(GLB_Displayed_Container_ScrollArea_Images()\ImageGadget), #GWL_EXSTYLE, GetWindowLongPtr_(GadgetID(GLB_Displayed_Container_ScrollArea_Images()\ImageGadget), #GWL_EXSTYLE) | #SS_ETCHEDVERT|#WS_EX_STATICEDGE)
SetWindowPos_(GadgetID(GLB_Displayed_Container_ScrollArea_Images()\ImageGadget),0,0,0,0,0,#SWP_NOMOVE|#SWP_NOSIZE|#SWP_FRAMECHANGED)
Case (#TBSTATE_ENABLED)
;// On retire la bordure au Gadget
SetWindowLongPtr_(GadgetID(GLB_Displayed_Container_ScrollArea_Images()\ImageGadget), #GWL_EXSTYLE, GetWindowLongPtr_(GadgetID(GLB_Displayed_Container_ScrollArea_Images()\ImageGadget), #GWL_EXSTYLE) & ~(#WS_EX_STATICEDGE|#SS_ETCHEDVERT))
SetWindowPos_(GadgetID(GLB_Displayed_Container_ScrollArea_Images()\ImageGadget),0,0,0,0,0,#SWP_NOMOVE|#SWP_NOSIZE|#SWP_FRAMECHANGED)
EndSelect
EndIf