j'ai un probleme de rafraichissement de scrollarea: je crée des gadgets à la volée dans une scroll area, mais lorsque je fait défiler celle ci , ça les efface, du moins en partie!
Genant.
Code : Tout sélectionner
Enumeration
#Window_0
#Button_0
#ScrollArea_0
EndEnumeration
Structure Gadget
Id.l
Nom.s
idnom.l
Taille.s
idtaille.l
Vitesse.s
idvitesse.l
Progress.l
idprogress.l
Frame.s
idframe.l
EndStructure
Global NewList Gadgets.Gadget()
Procedure AddGadget()
nbgadgets.l=CountList(Gadgets())
AddElement(Gadgets())
If nbgadgets= 0
dec.b=0
Else
dec.b=7
EndIf
If CreateGadgetList(WindowID(#Window_0))
Gadgets()\idnom=TextGadget(#PB_Any, 10, 15+nbgadgets*90+dec, 320, 15, "Nom;")
Gadgets()\idtaille=TextGadget(#PB_Any, 10, 35+nbgadgets*90+dec, 100, 15, "Taille:")
Gadgets()\idvitesse=TextGadget(#PB_Any, 10, 55+nbgadgets*90+dec, 110, 15, "Vitesse:")
Gadgets()\idprogress=ProgressBarGadget(#PB_Any, 10, 75+nbgadgets*90+dec, 325, 15, 0, 100)
Gadgets()\idframe=Frame3DGadget(#PB_Any, 5, 5+nbgadgets*90+dec, 335, 90, "")
If nbgadgets*(90+dec)> 515
SetGadgetAttribute(#ScrollArea_0,#PB_ScrollArea_InnerHeight,nbgadgets*(90+dec))
EndIf
EndIf
EndProcedure
Procedure Open_Window_0()
If OpenWindow(#Window_0, 215, 137, 601, 534, "test", #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_SizeGadget | #PB_Window_TitleBar | #PB_Window_ScreenCentered )
If CreateGadgetList(WindowID(#Window_0))
ScrollAreaGadget(#ScrollArea_0, 0, 0, 601,534, 580, 515, 30)
ButtonGadget(#Button_0, 460, 470, 60, 20, "Ajouter")
EndIf
EndIf
EndProcedure
Open_Window_0()
Repeat ; Start of the event loop
Event = WaitWindowEvent() ; This line waits until an event is received from Windows
WindowID = EventWindow() ; The Window where the event is generated, can be used in the gadget procedures
GadgetID = EventGadget() ; Is it a gadget event?
EventType = EventType()
If Event = #PB_Event_Gadget
If GadgetID = #Button_0
AddGadget()
EndIf
EndIf
Until Event = #PB_Event_CloseWindow ; End of the event loop
End
Je ne sais vraiment pas comment permettre un redraw() de la fenetre... maintenant ce probleme m'a l'air si grossier que c'est tres ^robablement moi qui ai fait une faute....
merci d'avance à vous!