Bonjour,
L'aide de PB pour mettre l'image dans un gadget image :
UsePNGImageDecoder()
If OpenWindow(0, 0, 0, 245, 105, "ImageGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
ShowScrollBar_(WindowID(0),#SB_BOTH,#True);montre les deux ascenseurs
If LoadImage(0, "Image.png"); changez le 2ème paramètre en indiquant le chemin/fichier contenant votre image
ImageGadget(0, 10, 10, 100, 83, ImageID(0)); imagegadget standard
EndIf
Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf
J'ai rajouté le ShowScrollBar_ qui montre bien les 2 ascenseurs.
Comment faire pour que les ascenseurs soient gérées par la fenêtre ?
Je pense qu'il faut utiliser un callback.
Mettre une image plus grande que la fenêtre pour voir le résultat.
Ascenseur dans une fenêtre
Re: Ascenseur dans une fenêtre
Je trouve qu'il est plus simple d'utiliser un scrollarea:
M.
Code : Tout sélectionner
Procedure BindScrollDatas()
SetWindowTitle(0, "ScrollAreaGadget " +
"(" +
GetGadgetAttribute(0, #PB_ScrollArea_X) +
"," +
GetGadgetAttribute(0, #PB_ScrollArea_Y) +
")" )
EndProcedure
Procedure Resize()
; ResizeGadget(0,0,0,WindowWidth(0), WindowHeight(0))
ResizeGadget(0, #PB_Ignore, #PB_Ignore, WindowWidth(EventWindow()), WindowHeight(EventWindow()))
EndProcedure
UsePNGImageDecoder()
UseJPEGImageDecoder()
If OpenWindow(0, 0, 0, 245, 105, "ImageGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered|#PB_Window_SizeGadget)
ScrollAreaGadget(0,0,0,245,105,1000,1000,30,#PB_ScrollArea_BorderLess)
If LoadImage(0, "ok.jpg"); changez le 2ème paramètre en indiquant le chemin/fichier contenant votre image
ImageGadget(1, 10, 10, 100, 83, ImageID(0)); imagegadget standard
EndIf
CloseGadgetList()
BindGadgetEvent(0, @BindScrollDatas())
BindEvent(#PB_Event_SizeWindow, @Resize())
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
End
Case #PB_Event_Gadget
Select EventGadget()
Case 0
Debug "Un ascenseur a été utilisé ! (" +
GetGadgetAttribute(0, #PB_ScrollArea_X) +
"," +
GetGadgetAttribute(0, #PB_ScrollArea_Y) +
")"
EndSelect
EndSelect
ForEver
EndIf
Re: Ascenseur dans une fenêtre
Merci pour les explications... et le code !!!