Vertikaler Slider maximaler Wert oben & minimaler unten

  • Guten Abend

    Kann mir jemand sagen wie es möglich ist, dass ich bei meinem Slider den maximalen Wert (in meinem Fall die Lautstärke) zu oberst und den minimalen zu unterst habe?

    Bei meinem Slider ist es leider genau umgekehrt...

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    #include <string.au3>
    #include <array.au3>
    #include <Constants.au3>
    #include <StaticConstants.au3>
    #include <SliderConstants.au3>
    #include <EditConstants.au3>
    #include <Sound.au3>

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    $Form1 = GUICreate("Player", 80, 316, 652, 187)
    GUISetBkColor(0xC8C8C8)
    $Volume = GUICtrlCreateSlider(10, 32, 32, 180, BitOR($TBS_VERT, $TBS_AUTOTICKS, $TBS_BOTH))
    GUICtrlSetData(-1, 50)
    $Labelvolume = GUICtrlCreateLabel(GUICtrlRead($volume),15, 215)
    GUICtrlSetFont(-1, 10, 400, 2, "Century Gothic")
    GUISetState(@SW_SHOW)
    While 1
    $msg = GUIGetMsg()
    Select

    [/autoit] [autoit][/autoit] [autoit]

    Case $Volume
    SoundSetWaveVolume(GUICtrlRead($Volume))
    GUICtrlSetData($Labelvolume,GUICtrlRead($volume))

    [/autoit] [autoit][/autoit] [autoit]

    EndSelect
    WEnd

    [/autoit]

    mfg Troin

    Einmal editiert, zuletzt von Troin (20. Juni 2009 um 22:59)

  • Hey Troin

    wie wärs wenn du von 100 einfach den Wert des Sliders abziehst :D

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    #include <string.au3>
    #include <array.au3>
    #include <Constants.au3>
    #include <StaticConstants.au3>
    #include <SliderConstants.au3>
    #include <EditConstants.au3>
    #include <Sound.au3>

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    $Form1 = GUICreate("Player", 80, 316, 652, 187)
    GUISetBkColor(0xC8C8C8)
    $Volume = GUICtrlCreateSlider(10, 32, 32, 180, BitOR($TBS_VERT, $TBS_AUTOTICKS, $TBS_BOTH))
    GUICtrlSetData(-1, 50)
    $Labelvolume = GUICtrlCreateLabel(GUICtrlRead($volume),15, 215)
    GUICtrlSetFont(-1, 10, 400, 2, "Century Gothic")
    GUISetState(@SW_SHOW)
    While 1
    $msg = GUIGetMsg()
    Select

    [/autoit] [autoit][/autoit] [autoit]

    Case $Volume
    SoundSetWaveVolume(GUICtrlRead($Volume))
    GUICtrlSetData($Labelvolume,100-GUICtrlRead($volume))

    [/autoit] [autoit][/autoit] [autoit]

    EndSelect
    WEnd

    [/autoit]

    Mfg Keyle

  • Hay Keyle

    So wird zwar die Darstellung des Labels richtig angezeigt (oben 100, unten 0) jedoch bleibt das Problem mit der Lutstärke bestehen ;)

    mfg Troin

  • hey Troin

    wiso das denn?

    hättest bei dem SoundSetWaveVolume das 100- doch auch noch selber dazu schreiben können

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    #include <string.au3>
    #include <array.au3>
    #include <Constants.au3>
    #include <StaticConstants.au3>
    #include <SliderConstants.au3>
    #include <EditConstants.au3>
    #include <Sound.au3>

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    $Form1 = GUICreate("Player", 80, 316, 652, 187)
    GUISetBkColor(0xC8C8C8)
    $Volume = GUICtrlCreateSlider(10, 32, 32, 180, BitOR($TBS_VERT, $TBS_AUTOTICKS, $TBS_BOTH))
    GUICtrlSetData(-1, 50)
    $Labelvolume = GUICtrlCreateLabel(GUICtrlRead($volume),15, 215)
    GUICtrlSetFont(-1, 10, 400, 2, "Century Gothic")
    GUISetState(@SW_SHOW)
    While 1
    $msg = GUIGetMsg()
    Select

    [/autoit] [autoit][/autoit] [autoit]

    Case $Volume
    SoundSetWaveVolume(100-GUICtrlRead($Volume))
    GUICtrlSetData($Labelvolume,100-GUICtrlRead($volume))

    [/autoit] [autoit][/autoit] [autoit]

    EndSelect
    WEnd

    [/autoit]

    Mfg Keyle

  • Och ich bin doch voll der Pfosten xD
    wahr wahrscheinlich zu simpel und ich hab viel zu weit gedacht ^^

    naja Danke vielmals!

    mfg

  • Ansonsten seh Dir mal die Funktion:
    _GUICtrlSlider_Create
    an, da gibt es mehr Optionen...

    MfG Schnuffel

    "Sarkasmus ist die niedrigste Form des Witzes, aber die höchste Form der Intelligenz."
    Val McDermid

    ein paar Infos ...

    Wer mehr als "nur" Hilfe benötigt, kann sich gern im Forum "Programmieranfragen" an uns wenden. Wir helfen in allen Fällen, die die Forenregeln zulassen.

    Für schnelle Hilfe benötigen wir ein ! lauffähiges ! Script, dass wir als Demonstration des Problems testen können. Wer von uns erwartet ein Teilscript erstmal lauffähig zu bekommen, der hat
    1. keine wirkliche Not
    2. keinen Respekt vor Menschen die ihm in ihrer Freizeit Ihre Hilfe anbieten
    3. oder ist einfach nur faul und meint wir coden das für ihn

    In solchen Fällen erlaube ich mir, die Anfrage einfach zu ignorieren. ;)

  • oder aber hier ein Beispiel aus dem engl. Forum:

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEX.au3>
    #include <WindowsConstants.au3>
    #include <SliderConstants.au3>

    [/autoit] [autoit][/autoit] [autoit]

    ;Global Const $WM_HSCROLL = 0x0114
    ;Global Const $WM_VSCROLL = 0x0115

    [/autoit] [autoit][/autoit] [autoit]

    $Gui = GuiCreate("Slider Update Demo", 250, 200)

    [/autoit] [autoit][/autoit] [autoit]

    GUIRegisterMsg($WM_HSCROLL, "WM_HVSCROLL")
    GUIRegisterMsg($WM_VSCROLL, "WM_HVSCROLL")

    [/autoit] [autoit][/autoit] [autoit]

    $Vertical_Label = GUICtrlCreateLabel("Vertical Slider Read: 0", 20, 20, 200)
    $Horizontal_Label = GUICtrlCreateLabel("Horizontal Slider Read: 0", 80, 120, 200)

    [/autoit] [autoit][/autoit] [autoit]

    $Vertical_Slider = GUICtrlCreateSlider(20, 50, 30, 120,BitOr($GUI_SS_DEFAULT_SLIDER, $TBS_VERT))
    GUICtrlSetData($Vertical_Slider,100)
    $Horizontal_Slider = GUICtrlCreateSlider(60, 150, 160, 30)

    [/autoit] [autoit][/autoit] [autoit]

    GUISetState()

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $Msg = GUIGetMsg()
    Switch $Msg
    Case -3
    Exit
    EndSwitch
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func WM_HVSCROLL($hWndGUI, $MsgID, $WParam, $LParam)
    Switch $LParam
    Case GUICtrlGetHandle($Vertical_Slider)
    $Vertical_val=100-GUICtrlRead($Vertical_Slider)
    ConsoleWrite($Vertical_val&@LF)
    GUICtrlSetData($Vertical_Label, "Vertical Slider Read: " & $Vertical_val)

    Case GUICtrlGetHandle($Horizontal_Slider)
    GUICtrlSetData($Horizontal_Label, "Horizontal Slider Read: " & GUICtrlRead($Horizontal_Slider))

    EndSwitch
    EndFunc

    [/autoit]

    MfG Schnuffel

    "Sarkasmus ist die niedrigste Form des Witzes, aber die höchste Form der Intelligenz."
    Val McDermid

    ein paar Infos ...

    Wer mehr als "nur" Hilfe benötigt, kann sich gern im Forum "Programmieranfragen" an uns wenden. Wir helfen in allen Fällen, die die Forenregeln zulassen.

    Für schnelle Hilfe benötigen wir ein ! lauffähiges ! Script, dass wir als Demonstration des Problems testen können. Wer von uns erwartet ein Teilscript erstmal lauffähig zu bekommen, der hat
    1. keine wirkliche Not
    2. keinen Respekt vor Menschen die ihm in ihrer Freizeit Ihre Hilfe anbieten
    3. oder ist einfach nur faul und meint wir coden das für ihn

    In solchen Fällen erlaube ich mir, die Anfrage einfach zu ignorieren. ;)