Code : Tout sélectionner
im_extrait=GrabImage(#Image_theme_bouton_defaut, #PB_Any, gbouton_x, gbouton_y, wbouton, hbouton) ; recupere un bout d'image correspondant a l'
ensuite je peux attribuer mon image "im_extrait" comme je le veux :
Code : Tout sélectionner
SetGadgetAttribute(onglet()\bouton[tt], #PB_Button_Image,ImageID(im_extrait)); on met notre image theme
jusque là pas de problemes , mais voila ....
imaginez que j'ai a utiliser cette meme fonction plusieurs fois
mais entre temps bien sur #Image_theme_bouton_defaut ne pointe plus la meme image ...
que deviennent les images prededement crees ???

ben je crois bien qu'elle reste en RAM !!!
il faudrai pouvoir faire un freeimage(im_extrait)
apres un
Code : Tout sélectionner
SetGadgetAttribute(onglet()\bouton[tt], #PB_Button_Image,ImageID(im_extrait))
sans que ce freeimage special n'efface l'image du bouton
mais qu'il nettoie la Ram , un peu comme un garbage collection
qui se chargerai de virer les images crees par #pb_any
et qui ne sont plus utilisé par le programme
je sais pas si je suis tres clair

mais pour résumer (pour Chris

#pb_any , cree des choses en Ram a la demande , mais il n'y a rien
pour effacer ces choses crees !!
je trouve donc que #pb_any est dangereux a utiliser !!
la prog a l'ancienne , on faisait un tableau d'éléments fini
qu'on réutilisaient a loisir , toujours les même index !!
lorsque ceux ci ne servaient plus on mettais un 0
et basta,
avec #pb_any , on creer facilement , mais pour gerer ce qu'il deviens apres ???
alors bien sur si c'est pour creer un system de gestion des "objets" crees par #pb_any , autant gerer des index fini et connu a l'avance
(Dim() ) non ?



