Neosis a écrit :Effectivement je pourrai changé la valeur de i j'ai déjà essayé mais par exemple si je prend i-6 pour réduire ma fenêtre, lors du redimensionnement la fenêtre va laissé des "traces" derrière elle , je c'est pas si vous comprenez ce que je veux dire par "laisser des trace" en gros le redimensionnement ce fait pas très bien... Et puis j'aimerai savoir pourquoi le redimensionnement en taille normale et plus lent 
faut y aller carrement !
Code : Tout sélectionner
; Fait par Néosis
#Window =1
#GA_ROOT =2
OpenWindow(#Window,50,50,100,50,"Test")
SetTimer_(#Null, 1, 50, #Null)
Repeat
Evenement = WaitWindowEvent()
Select Evenement
Case #WM_TIMER
HObjet = WindowFromPoint_(DesktopMouseX(),DesktopMouseY())
If HObjet = WindowID(#Window) Or HRoot = WindowID(#Window)
While i<800
ResizeWindow(#Window,WindowX(#Window),WindowY(#Window), i, i/2)
i+20
Wend
Else
While i>100
ResizeWindow(#Window,WindowX(#Window),WindowY(#Window), i, i/2)
i-20
Wend
EndIf
EndSelect
Until Evenement = #PB_Event_CloseWindow
le traces sont du au Redraw, parceque ta fenetre met trop de temp a se fermer !!
mais si tu met 20 , pas de problemes , parce que la fermeture a lieu avant le rafraichissement de l'ecran
;*************************************************************
;*************************************************************
;*************************************************************
;*************************************************************
ce code prouve l'interaction avec le refraichissement d'ecran
le Delay() a la particularité de permettre de rendre la main aux system (DO EVENTS en Visual Basic)
ce qui permet d'obtenir un agrandissement lent tout en ayant le rafraichissement niquel
après faut jouer avec les valeurs
pour faire réapparaitre le rafraichissement de l'écran diminue le Delay()
Code : Tout sélectionner
; Fait par Néosis
#Window =1
#GA_ROOT =2
OpenWindow(#Window,50,50,100,50,"Test")
SetTimer_(#Null, 1, 50, #Null)
Repeat
Evenement = WaitWindowEvent()
Select Evenement
Case #WM_TIMER
HObjet = WindowFromPoint_(DesktopMouseX(),DesktopMouseY())
If HObjet = WindowID(#Window) Or HRoot = WindowID(#Window)
While i.f<800
ResizeWindow(#Window,WindowX(#Window),WindowY(#Window), i, i/2)
i+0.5
Delay(4)
Wend
Else
While i>100
ResizeWindow(#Window,WindowX(#Window),WindowY(#Window), i, i/2)
i-0.5
Delay(4)
Wend
EndIf
EndSelect
Until Evenement = #PB_Event_CloseWindow
ceci est pas mal
Code : Tout sélectionner
; Fait par Néosis
#Window =1
#GA_ROOT =2
OpenWindow(#Window,50,50,100,50,"Test")
SetTimer_(#Null, 1, 50, #Null)
Repeat
Evenement = WaitWindowEvent()
Select Evenement
Case #WM_TIMER
HObjet = WindowFromPoint_(DesktopMouseX(),DesktopMouseY())
If HObjet = WindowID(#Window) Or HRoot = WindowID(#Window)
While i.f<800
ResizeWindow(#Window,WindowX(#Window),WindowY(#Window), i, i/2)
i+10
Delay(8)
Wend
Else
While i>100
ResizeWindow(#Window,WindowX(#Window),WindowY(#Window), i, i/2)
i-10
Delay(8)
Wend
EndIf
EndSelect
Until Evenement = #PB_Event_CloseWindow