UDF > GUI > GuiSlider >


_GUICtrlSlider_Create

Crée un contrôle Slider

#include <GuiSlider.au3>
_GUICtrlSlider_Create ( $hWnd, $iX, $iY [, $iWidth = 100 [, $iHeight = 20 [, $iStyle = $TBS_AUTOTICKS [, $iExStyle = 0x00000000]]]] )

Paramètres

$hWnd Handle de la fenêtre parent ou de la fenêtre propriétaire
$iX Position horizontale du contrôle
$iY Position verticale du contrôle
$iWidth [optionnel] Largeur du contrôle
$iHeight [optionnel] Hauteur de contrôle
$iStyle [optionnel] Styles du contrôle:
    $TBS_AUTOTICKS - Ajoute les marques de gaduation lorsque vous définissez la plage des valeurs du slider en utilisant le message TBM_SETRANGE
    $TBS_BOTH - Place les graduations des deux côtés de la ligne de glisse
    $TBS_BOTTOM - Place les graduations en dessous de la ligne de glisse d'un slider horizontal
    $TBS_DOWNISLEFT - Le dessous devient la gauche et le dessus devient la droite
    $TBS_ENABLESELRANGE - Les marques de graduations aux positions de début et de fin d'un intervalle de sélection sont affichés sous forme de triangles
        (à la place de tirets verticaux), et la plage de sélection est mise en évidence.
    $TBS_FIXEDLENGTH - Permet de modifier la taille du slider avec le message $TBM_SETTHUMBLENGTH
    $TBS_HORZ - Spécifie que le Slider est horizontal. C'est la valeur par défaut
    $TBS_LEFT - Place les graduations sur le côté gauche d'un Slider vertical
    $TBS_NOTHUMB - Indique que le Slider n'a pas de curseur
    $TBS_NOTICKS - Indique qu'aucune graduation n'est placé sur le Slider
    $TBS_REVERSED - Le plus petit nombre est la limite supérieure et le plus grand indique la limite inférieur
    $TBS_RIGHT - Place les graduations sur le côté droit d'un Slider vertical
    $TBS_TOP - Place les graduations sur le dessus d'un Slider horizontal
    $TBS_TOOLTIPS - Crée un contrôle ToolTip par défaut qui affiche la position actuelle du curseur
    $TBS_VERT - Crée un Slider vertical

Par défaut: $TBS_AUTOTICKS
Forçés: $WS_CHILD, $WS_VISIBLE
$iExStyle [optionnel] Styles étendus du contrôle. Ils correspondent aux constantes standards $WS_EX_*. Consultez Table des styles étendus.
Par défaut: $WS_EX_STATICEDGE

Valeur de retour

Succès: Retourne le handle du contrôle Slider.
Échec: Retourne 0

Remarques

Cette fonction est destinée aux utilisateurs avertis qui veulent comprendre comment fonctionne le contrôle.

En relation

_GUICtrlSlider_Destroy

Exemple

#include <GUIConstantsEx.au3>
#include <GuiSlider.au3>
#include <WindowsConstants.au3>

Global $g_hSlider

Example()

Func Example()
    Local $hGUI

    ; Crée une GUI
    $hGUI = GUICreate("(UDF Created) Slider Create", 400, 296)
    $g_hSlider = _GUICtrlSlider_Create($hGUI, 2, 2, 396, 20, BitOR($TBS_TOOLTIPS, $TBS_AUTOTICKS))
    GUISetState(@SW_SHOW)

    GUIRegisterMsg($WM_NOTIFY, "WM_NOTIFY")

    ; Boucle jusqu'à ce que l'utilisateur quitte.
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE
    GUIDelete()
EndFunc   ;==>Example

Func WM_NOTIFY($hWnd, $iMsg, $wParam, $lParam)
    #forceref $hWnd, $iMsg, $wParam
    Local $hWndFrom, $iIDFrom, $iCode, $tNMHDR, $hWndSlider
    $hWndSlider = $g_hSlider
    If Not IsHWnd($g_hSlider) Then $hWndSlider = GUICtrlGetHandle($g_hSlider)

    $tNMHDR = DllStructCreate($tagNMHDR, $lParam)
    $hWndFrom = HWnd(DllStructGetData($tNMHDR, "hWndFrom"))
    $iIDFrom = DllStructGetData($tNMHDR, "IDFrom")
    $iCode = DllStructGetData($tNMHDR, "Code")
    If $hWndFrom = $hWndSlider Then
        If $iCode = $NM_RELEASEDCAPTURE Then 
            ; Le contrôle lance la capture de la souris
            _DebugPrint("$NM_RELEASEDCAPTURE" & @CRLF & "--> hWndFrom:" & @TAB & $hWndFrom & @CRLF & _
                "-->IDFrom:" & @TAB & $iIDFrom & @CRLF & _
                "-->Code:" & @TAB & $iCode)
            ; Aucune valeur retournée
        EndIf
    EndIf
    Return $GUI_RUNDEFMSG
EndFunc   ;==>WM_NOTIFY

Func _DebugPrint($s_Text, $sLine = @ScriptLineNumber)
    ConsoleWrite( _
            "!===========================================================" & @CRLF & _
            "+======================================================" & @CRLF & _
            "-->Line(" & StringFormat("%04d", $sLine) & "):" & @TAB & $s_Text & @CRLF & _
            "+======================================================" & @CRLF)
EndFunc   ;==>_DebugPrint