[T] WinsetTrans (divers exemples-by autoit-fr)

Partagez vos scripts, et vos applications AutoIt.
Règles du forum
.
Répondre
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11773
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

[T] WinsetTrans (divers exemples-by autoit-fr)

#1

Message par Tlem »

Message transféré de l'ancien forum.
Auteur : ani
Date : 02/03/2007


Citation :

Exemple numéro 1
Interface GUI utilisant l'expression suivante :
Description :
FOR <variable> = <start> To <stop> [Step <stepval>]
WinSetTrans("","",<variable>)
sleep(valeur)
NEXT

Code : Tout sélectionner

#include <GUIConstants.au3>
#NoTrayIcon

Dim $st1, $st2, $VALEUR_STEP, $VALEUR_SLEEP, $titre
$st1 = "1"
$st2 = "255"
$VALEUR_STEP = "2"
$VALEUR_SLEEP = "10"
$titre = "Exemple by autoit Fr"
$GUI = GUICreate($titre, 281, 80, 221, 271)

$Group1 = GUICtrlCreateGroup("", 4, 0, 273, 73)

$LABEL_START = GUICtrlCreateLabel("Start", 20, 16, 26, 17)
GUICtrlSetFont(-1, 8, 400, 4, "MS Sans Serif")
$Staart = GUICtrlCreateInput($st1, 12, 34, 47, 21, BitOR($ES_AUTOHSCROLL, $ES_NUMBER))
$Updown_START = GUICtrlCreateUpdown($Staart)
GUICtrlSetLimit($Updown_START, 255, 0)

$LABEL_STOP = GUICtrlCreateLabel("Stop", 68, 16, 26, 17)
GUICtrlSetFont(-1, 8, 400, 4, "MS Sans Serif")
$Stoop = GUICtrlCreateInput($st2, 60, 34, 47, 21, BitOR($ES_AUTOHSCROLL, $ES_NUMBER))
$Updown_STOP = GUICtrlCreateUpdown($Stoop)
GUICtrlSetLimit($Updown_STOP, 255, 0)

$LABEL_STEP = GUICtrlCreateLabel("Step", 116, 16, 26, 17)
GUICtrlSetFont(-1, 8, 400, 4, "MS Sans Serif")
$Steep = GUICtrlCreateInput($VALEUR_STEP, 108, 34, 47, 21, BitOR($ES_AUTOHSCROLL, $ES_NUMBER))
$Updown_STEP = GUICtrlCreateUpdown($Steep)
GUICtrlSetLimit($Updown_STEP, 3, 1)

$LABEL_SLEEP = GUICtrlCreateLabel("Sleep", 160, 16, 31, 17)
GUICtrlSetFont(-1, 8, 400, 4, "MS Sans Serif")
$SLEEP = GUICtrlCreateInput($VALEUR_SLEEP, 156, 34, 47, 21)
$Updown_SLEEP = GUICtrlCreateUpdown($SLEEP)
GUICtrlSetLimit($Updown_SLEEP, 50, 0)

$Button1 = GUICtrlCreateButton("Test", 216, 34, 51, 21, 0)

GUICtrlCreateGroup("", -99, -99, 1, 1) ; on ferme le group
GUISetState(@SW_SHOW)

While 1
    $msg = GUIGetMsg()
    Select
        Case $msg = $Button1
            _TestEffet()
        Case $msg = $GUI_EVENT_CLOSE
            _EffetOut()
    EndSelect
WEnd

Func _TestEffet()
    $st1 = GUICtrlRead($Staart)
    $st2 = GUICtrlRead($Stoop)
    $VALEUR_SLEEP = GUICtrlRead($SLEEP)
    $VALEUR_STEP = GUICtrlRead($Steep)
    For $VALEUR_X = $st1 To $st2 Step $VALEUR_STEP
        WinSetTrans("", "", $VALEUR_X)
        Sleep($VALEUR_SLEEP)
    Next
EndFunc   ;==>_TestEffet

Func _EffetOut()
    For $VALEUR_X = $st2 To $st1 Step -$VALEUR_STEP
        WinSetTrans("", "", $VALEUR_X)
        Sleep($VALEUR_SLEEP)
    Next
    Exit
EndFunc   ;==>_EffetOut
L'exemple suivant est à l'identique du premier mais cette fois-ci en utilisant le GuiOnEvent

Code : Tout sélectionner

#include <GUIConstants.au3>
#NoTrayIcon

Opt("GUIOnEventMode", 1)
Dim $st1, $st2, $VALEUR_STEP, $VALEUR_SLEEP, $titre
$st1 = "1"
$st2 = "255"
$VALEUR_STEP = "2"
$VALEUR_SLEEP = "10"
$titre = "Exemple by autoit + Fr"

$GUI = GUICreate($titre, 284, 80, 221, 271)
GUISetOnEvent($GUI_EVENT_CLOSE, "_quitter")
$Group1 = GUICtrlCreateGroup("", 4, 0, 273, 73)

$LABEL_START = GUICtrlCreateLabel("Start", 20, 16, 26, 17)
GUICtrlSetFont(-1, 8, 400, 4, "MS Sans Serif")
$Staart = GUICtrlCreateInput($st1, 12, 34, 47, 21, BitOR($ES_AUTOHSCROLL, $ES_NUMBER))
$Updown_START = GUICtrlCreateUpdown($Staart)
GUICtrlSetLimit($Updown_START, 255, 0)

$LABEL_STOP = GUICtrlCreateLabel("Stop", 68, 16, 26, 17)
GUICtrlSetFont(-1, 8, 400, 4, "MS Sans Serif")
$Stoop = GUICtrlCreateInput($st2, 60, 34, 47, 21, BitOR($ES_AUTOHSCROLL, $ES_NUMBER))
$Updown_STOP = GUICtrlCreateUpdown($Stoop)
GUICtrlSetLimit($Updown_STOP, 255, 0)

$LABEL_STEP = GUICtrlCreateLabel("Step", 116, 16, 26, 17)
GUICtrlSetFont(-1, 8, 400, 4, "MS Sans Serif")
$Steep = GUICtrlCreateInput($VALEUR_STEP, 108, 34, 47, 21, BitOR($ES_AUTOHSCROLL, $ES_NUMBER))
$Updown_STEP = GUICtrlCreateUpdown($Steep)
GUICtrlSetLimit($Updown_STEP, 3, 1)

$LABEL_SLEEP = GUICtrlCreateLabel("Sleep", 160, 16, 31, 17)
GUICtrlSetFont(-1, 8, 400, 4, "MS Sans Serif")
$SLEEP = GUICtrlCreateInput($VALEUR_SLEEP, 156, 34, 47, 21)
$Updown_SLEEP = GUICtrlCreateUpdown($SLEEP)
GUICtrlSetLimit($Updown_SLEEP, 50, 0)

$Button1 = GUICtrlCreateButton("Test", 216, 34, 51, 21, 0)
GUICtrlSetOnEvent($Button1, "_TestEffet")

GUICtrlCreateGroup("", -99, -99, 1, 1)

GUISetState(@SW_SHOW)

While 1
    Sleep(100)
WEnd

Func _TestEffet()
    $st1 = GUICtrlRead($Staart)
    $st2 = GUICtrlRead($Stoop)
    $VALEUR_SLEEP = GUICtrlRead($SLEEP)
    $VALEUR_STEP = GUICtrlRead($Steep)
    For $VALEUR_X = $st1 To $st2 Step $VALEUR_STEP
        WinSetTrans("", "", $VALEUR_X)
        Sleep($VALEUR_SLEEP)
    Next
EndFunc   ;==>_TestEffet

Func _Quitter()
    For $VALEUR_X = $st2 To $st1 Step -$VALEUR_STEP
        WinSetTrans("", "", $VALEUR_X)
        Sleep($VALEUR_SLEEP)
    Next
    Exit
EndFunc   ;==>_Quitter
Toujours avec le GuiOnEvent mais en utilisant un classement pour s'y retrouver.

Code : Tout sélectionner

#include <GUIConstants.au3>
#NoTrayIcon

Opt("GUIOnEventMode", 1)
Dim $st1, $st2, $VALEUR_STEP, $VALEUR_SLEEP, $titre
$st1 = "1"
$st2 = "255"
$VALEUR_STEP = "2"
$VALEUR_SLEEP = "10"
$titre = "Exemple by autoit Fr"
; Création de l'interface
$GUI = GUICreate($titre, 284, 80, 221, 271)
; Création des divers evenement
GUISetOnEvent($GUI_EVENT_CLOSE, "_quitter")
; création du group
$Group1 = GUICtrlCreateGroup("", 4, 0, 273, 73)
; Création des labels
$LABEL_START = GUICtrlCreateLabel("Start", 20, 16, 26, 17)
$LABEL_STOP = GUICtrlCreateLabel("Stop", 68, 16, 26, 17)
$LABEL_STEP = GUICtrlCreateLabel("Step", 116, 16, 26, 17)
$LABEL_SLEEP = GUICtrlCreateLabel("Sleep", 160, 16, 31, 17)
; On souligne les labels
GUICtrlSetFont($LABEL_START, 8, 400, 4, "MS Sans Serif")
GUICtrlSetFont($LABEL_STOP, 8, 400, 4, "MS Sans Serif")
GUICtrlSetFont($LABEL_STEP, 8, 400, 4, "MS Sans Serif")
GUICtrlSetFont($LABEL_SLEEP, 8, 400, 4, "MS Sans Serif")
; Création des cases
$Staart = GUICtrlCreateInput($st1, 12, 34, 47, 21, BitOR($ES_AUTOHSCROLL, $ES_NUMBER))
$Stoop = GUICtrlCreateInput($st2, 60, 34, 47, 21, BitOR($ES_AUTOHSCROLL, $ES_NUMBER))
$Steep = GUICtrlCreateInput($VALEUR_STEP, 108, 34, 47, 21, BitOR($ES_AUTOHSCROLL, $ES_NUMBER))
$SLEEP = GUICtrlCreateInput($VALEUR_SLEEP, 156, 34, 47, 21, BitOR($ES_AUTOHSCROLL, $ES_NUMBER))
; création des updown
$Updown_START = GUICtrlCreateUpdown($Staart)
$Updown_STOP = GUICtrlCreateUpdown($Stoop)
$Updown_STEP = GUICtrlCreateUpdown($Steep)
$Updown_SLEEP = GUICtrlCreateUpdown($SLEEP)
; création des limitations
GUICtrlSetLimit($Updown_START, 255, 0)
GUICtrlSetLimit($Updown_STOP, 255, 0)
GUICtrlSetLimit($Updown_STEP, 3, 1)
GUICtrlSetLimit($Updown_SLEEP, 50, 0)
; Création du bouton qui simulera l'animation désiré
$Button1 = GUICtrlCreateButton("Test", 216, 34, 51, 21, 0)
GUICtrlSetState($Button1, $GUI_FOCUS)
GUICtrlSetOnEvent($Button1, "_TestEffet")
; on ferme le premier group
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUISetState(@SW_SHOW)
While 1
    Sleep(100)
WEnd
; Cette fonction va lire les valeur qui se trouve dans les input
Func _TestEffet()
    $st1 = GUICtrlRead($Staart)
    $st2 = GUICtrlRead($Stoop)
    $VALEUR_SLEEP = GUICtrlRead($SLEEP)
    $VALEUR_STEP = GUICtrlRead($Steep)
    For $VALEUR_X = $st1 To $st2 Step $VALEUR_STEP
        WinSetTrans("", "", $VALEUR_X)
        Sleep($VALEUR_SLEEP)
    Next
EndFunc   ;==>_TestEffet
; Cette fonction peut remplacer l'effet Fade + in ( user32.dll / AW_FADE_OUT = 0x00090000 )
; AW signifie Animate Windows
; Nous la simulont avec For = To [Step ]
; elle servira ici pour la fermeture du programme.
Func _Quitter()
    For $VALEUR_X = $st2 To $st1 Step -$VALEUR_STEP
        WinSetTrans("", "", $VALEUR_X)
        Sleep($VALEUR_SLEEP)
    Next
    Exit
EndFunc   ;==>_Quitter
Exemple numéro 2,
Winsettrans par slider :

Code : Tout sélectionner

#include <GUIConstants.au3>
#NoTrayIcon

$titre = "Slider by autoit-Fr"

; Création de l'interface
$GUI = GUICreate($titre, 246, 74, -1, -1, $WS_CAPTION)

; on ajoute la couleur de fond pour l'interface ( qui sera ici noir )
GUISetBkColor(0x000000)

; Création d'un groupe
$Group1 = GUICtrlCreateGroup("", 4, 0, 237, 68)

; Création des Labels
$LABEL_SLIDER = GUICtrlCreateLabel("Valeur du Slider:", 10, 21, 78, 17)
$LABEL_POURCENT = GUICtrlCreateLabel("Valeur en Pourcentage:", 10, 42, 113, 17)

; Mise en forme des labels
GUICtrlSetFont($LABEL_SLIDER, 8, 400, 4, "MS Sans Serif")
GUICtrlSetFont($LABEL_POURCENT, 8, 400, 4, "MS Sans Serif")
; On ajoute la couleur
GUICtrlSetColor($LABEL_SLIDER, 0xD4D0C8)
GUICtrlSetColor($LABEL_POURCENT, 0xD4D0C8)

; Création des Input
$VALEUR_SLIDER = GUICtrlCreateInput("", 90, 21, 30, 17, $ES_READONLY)
$VALEUR_POURCENT = GUICtrlCreateInput("", 125, 42, 110, 17, $ES_READONLY)

; Création du slider
$SLIDER_TRANSITION = GUICtrlCreateSlider(125, 14, 110, 25, $TBS_AUTOTICKS + $TBS_HORZ + $TBS_TOP, $WS_EX_CLIENTEDGE)
GUICtrlSetState($SLIDER_TRANSITION, $GUI_FOCUS)
$Slider = GUICtrlRead($SLIDER_TRANSITION)

; On ajoute une limitation au divers élèment
GUICtrlSetLimit($VALEUR_SLIDER, 3)
GUICtrlSetLimit($VALEUR_POURCENT, 3)
GUICtrlSetLimit($SLIDER_TRANSITION, 255, 10)

; On ajoute une valeur initial
GUICtrlSetData($VALEUR_SLIDER, 255)
GUICtrlSetData($VALEUR_POURCENT, 100)
GUICtrlSetData($SLIDER_TRANSITION, 255)

;fermeture du group
GUICtrlCreateGroup("", -99, -99, 1, 1)
;
GUISetState(@SW_SHOW)

While 1
    $msg = GUIGetMsg()
    Select
        Case $msg = $GUI_EVENT_CLOSE
            Exit
        Case $SLIDER_TRANSITION
            $val_Majslider = GUICtrlRead($SLIDER_TRANSITION)
            If $Slider <> $val_Majslider Then Majslider()
    EndSelect
WEnd

Func Majslider()
    $Slider = $val_Majslider
    GUICtrlSetData($VALEUR_POURCENT, $Slider / 255 * 100)
    GUICtrlSetData($VALEUR_SLIDER, $Slider)
    WinSetTrans($GUI, "", $Slider)
EndFunc   ;==>Majslider
Répondre