Page 1 sur 1

[R] Apparition en fondu d'une fênetre

Posté : sam. 30 août 2008 09:50
par DJSIR
Bonjour,
J'ai besoin d'aide mais vous connaissez déjà la question, comment faire pour qu'une fenêtre AutoIt apparaisse en fondu ou avec un effet comme sur vista...
Merci DJSIR

Re: [..] Apparition en fondu d'une fênetre

Posté : sam. 30 août 2008 10:40
par ani
bonjour djisir

je ne vois pas trop t'a demande (aurais-tu un exemple ?)
je ne dispose pas non plus de vista :(

Re: [..] Apparition en fondu d'une fênetre

Posté : sam. 30 août 2008 10:55
par Tlem

Re: [..] Apparition en fondu d'une fênetre

Posté : sam. 30 août 2008 11:16
par Tlem
Effectivement la fonction WinAnimate de Lazy est très intéressante malgré un effet indésirable sur le fade out et certaines animation.

Je le rajoute à la suite de ma fonction dans le forum UDF et fonctions.

Merci ani.

Re: [..] Apparition en fondu d'une fênetre

Posté : sam. 30 août 2008 11:58
par ani
pas de soucis ;)

En effet y a quelque petit bug (mineur), que sous autoit :o

faudra faire un petit pack zip ;)

Re: [..] Apparition en fondu d'une fênetre

Posté : sam. 30 août 2008 15:28
par Artemis
Voila un code qui fonctionne chez moi (tiré d'un exemple du forum anglais) :

Code : Tout sélectionner

#NoTrayIcon
#include <GUIConstants.au3>

$Form1 = GUICreate("Fondu", 144, 49, 193, 125)
$Button1 = GUICtrlCreateButton("Quitter", 8, 8, 129, 33, 0)
DllCall("user32.dll", "int", "AnimateWindow", "hwnd", $Form1, "int", 1000, "long", 0x00080000);fondu
GUISetState(@SW_SHOW)

While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit
        Case $Button1
            DllCall("user32.dll", "int", "AnimateWindow", "hwnd", $Form1, "int", 1000, "long", 0x00090000);fondu2
            Exit
    EndSwitch
WEnd
Artemis :)

Re: [..] Apparition en fondu d'une fênetre

Posté : sam. 30 août 2008 18:19
par DJSIR
Merci pour vos réponses je vais téster tout sa... et je ovus dit après...

Re: [..] Apparition en fondu d'une fênetre

Posté : sam. 30 août 2008 18:29
par DJSIR
Bon voila merci j'ai trouvé le dernier code de Artémis très intéresant...
Assez bon effet du genre ce que je recherche mais il faudrait améliorer un peu tout sa...

Re: [..] Apparition en fondu d'une fênetre

Posté : dim. 31 août 2008 12:37
par Tlem
DJSIR a écrit :j'ai trouvé le dernier code de Artémis très intéresant...
Assez bon effet du genre ce que je recherche mais il faudrait améliorer un peu tout sa...
Le code proposé par Artemis correspond à ce que ani vous à proposé précédemment. :shock:

La seule différence, c'est que le code de la fonction _WinAnimate est bien plus complet et mieux présenté pour une intégration à un autre script.

Re: [R] Apparition en fondu d'une fênetre

Posté : dim. 31 août 2008 15:08
par Artemis
C'est la ligne de code brut :) .

Mais elle est complètement paramétrable par exemple, il suffit de modifier le "1000" par le temps (en millisecondes) de l'effet

Code : Tout sélectionner

DllCall("user32.dll", "int", "AnimateWindow", "hwnd", $Form1, "int", [color=#FF0000]1000[/color], "long", 0x00080000)
Artemis :wink:

P.S : Mettre à environ 120 pour un effet vista

Re: [R] Apparition en fondu d'une fênetre

Posté : dim. 31 août 2008 18:37
par Tlem
Artemis a écrit :C'est la ligne de code brut[/code]Oui, c'est bien ce que j'ai dit (a peu de chose prêt). :roll:
Artemis a écrit :Mais elle est complètement paramétrable par exemple, il suffit de modifier le "1000" par le temps (en millisecondes) de l'effet
Heuuu pour _WinAnimate c'est exactement la même chose.
Par exemple :

Code : Tout sélectionner

_WinAnimate($hwnd, $AW_FADE_IN, 1000)
pour faire la même chose que votre ligne brute.

L'avantage de cette fonction, est tout simplement de bien identifier les différentes possibilités d'effets sur la GUI.
Je doute que lors de l'écriture d'un script, vous vous rappeliez que pour un fade-out il faut utiliser la valeur 0x00090000, alors qu'un petit coup d'œil sur la fonction vous donne la réponse. :P

Re: [R] Apparition en fondu d'une fênetre

Posté : dim. 31 août 2008 19:30
par Artemis
Mais quand il faut inclure plus de 30 lignes alors qu'une ligne suffit... Image

Artemis :wink:

Re: [R] Apparition en fondu d'une fênetre

Posté : dim. 31 août 2008 21:20
par Tlem
#include <GUIConstants.au3> vous rajoute environs 90 lignes et vous chipotez pour 30 lignes. :shock:
:P :P

Re: [R] Apparition en fondu d'une fênetre

Posté : lun. 01 sept. 2008 09:08
par DJSIR
Merci a tous. J'ai mis ma vitesse a 200 comme sa sa reste convenable. Désolé ani je ne m'était pas trop appuyé sur ta pièce jointe... :)

Re: [R] Apparition en fondu d'une fênetre

Posté : lun. 01 sept. 2008 10:11
par ani
pas de problème djsir ;)
j'aurais du indiquer un exemple :)

bonne continuation ;)