Image je nach Comboboxstatus ändern

  • Hallo,
    Ich möchte je nach dem Aktuellen status einer Combobox ein Bild in meiner kleinen GUI ändern lassen.

    Hier mein aktuelles Script
    im moment wird gar kein bild angezeigt weiß auch nich warum...

    Spoiler anzeigen
    [autoit]

    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <StaticConstants.au3>
    #include <array.au3>

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

    Global $Programme=29
    Global $i=0
    Global $grafik
    Global $combo
    Global $number
    Global $nameProgramme[$Programme]
    Global $Auswahlfenster
    Global $breite=200,$hoehe=100,$abstandlinks=@DesktopWidth-1000,$abstandoben=@DesktopHeight-700
    Global $combosys[$programme]
    Global $pfad[$Programme]
    ;Programmnamen

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

    _Programmauswahl ("Programmauswahl")
    Func _Programmauswahl ($stitle)

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

    $Auswahlfenster=GUICreate($stitle,$breite,$hoehe,$abstandlinks,$abstandoben)
    GUICtrlCreateLabel("Programm auswählen", 10, 10)
    GUICtrlSetFont (-1,8.9,460,4,"arial")
    $Grafik=GUICtrlCreatePic(@Scriptdir&"\pics\accmanger.jpg",170,0,30,30);Bild erstellen
    ;========================;
    ;======Programmnamen=====;
    ;========================;
    $nameProgramme[0]="Accountmanager"
    $nameProgramme[1]="Ashampoo Burning Studio 9"
    $nameProgramme[2]="CloneCD"
    $nameProgramme[3]="CloneDVD2"
    $nameProgramme[4]="Cyberlink PowerDVD"
    $nameProgramme[5]="DVD Shrink"
    $nameProgramme[6]="Everest Ultimate"
    $nameProgramme[7]="FlashFXP"
    $nameProgramme[8]="Foxit Phantom"
    $nameProgramme[9]="Google Earth"
    $nameProgramme[10]="ICQ 7"
    $nameProgramme[11]="IrfanView"
    $nameProgramme[12]="JDownloader"
    $nameProgramme[13]="MBase 2"
    $nameProgramme[14]="Media Player Classic Home Cinema"
    $nameProgramme[15]="MediaMonkey"
    $nameProgramme[16]="Mediaplayer Classic"
    $nameProgramme[17]="Firefox"
    $nameProgramme[18]="Thunderbird"
    $nameProgramme[19]="Notepad++"
    $nameProgramme[20]="Skype"
    $nameProgramme[21]="Snagit 9"
    $nameProgramme[22]="TeamSpeak 3"
    $nameProgramme[23]="TeamViewer 5"
    $nameProgramme[24]="TrueCrypt"
    $nameProgramme[25]="TuneUp 2010"
    $nameProgramme[26]="Virtual CloneDrive"
    $nameProgramme[27]="Virtual DJ"
    $nameProgramme[28]="VLC media player"

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

    ;========================;
    ;======Programmnamen=====;
    ;========================;
    $pfad[0]=@ProgramFilesDir&"\Accountmanager\AccountManager.App.exe"
    $pfad[1]=@ProgramFilesDir&"\Ashampoo\Ashampoo Burning Studio 9\burningstudio9.exe"
    $pfad[2]=@ProgramFilesDir&"\SlySoft\CloneCD\CloneCD.exe"
    $pfad[3]=@ProgramFilesDir&"\Elaborate Bytes\CloneDVD2\CloneDVD2.exe"
    $pfad[4]=@ProgramFilesDir&"\CyberLink\PowerDVD\PowerDVD.exe"
    $pfad[5]=@ProgramFilesDir&"\DVD Shrink DE\DVD Shrink 3.2 DE (DeCSS-frei).exe"
    $pfad[6]=@ProgramFilesDir&"\Lavalys\EVEREST Ultimate Edition\everest.exe"
    ;$pfad[7]=@ProgramFilesDir&"\
    $pfad[8]=@ProgramFilesDir&"\Foxit Software\Foxit Phantom\Foxit Phantom.exe"
    $pfad[9]=@ProgramFilesDir&"\Google\Google Earth\earth.exe"
    $pfad[10]=@ProgramFilesDir&"\ICQ7.0\ICQ.exe"
    $pfad[11]=@ProgramFilesDir&"\IrfanView\i_view32.exe"

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

    #cs
    $pfad[12]=@ProgramFilesDir&"\JDownloader\JDownloader.exe"
    $pfad[13]=@ProgramFilesDir&"\
    $pfad[14]=@ProgramFilesDir&"\
    $pfad[15]=@ProgramFilesDir&"\
    $pfad[16]=@ProgramFilesDir&"\
    $pfad[17]=@ProgramFilesDir&"\
    $pfad[18]=@ProgramFilesDir&"\
    $pfad[19]=@ProgramFilesDir&"\
    $pfad[20]=@ProgramFilesDir&"\
    $pfad[21]=@ProgramFilesDir&"\
    $pfad[22]=@ProgramFilesDir&"\
    $pfad[23]=@ProgramFilesDir&"\
    $pfad[24]=@ProgramFilesDir&"\
    $pfad[25]=@ProgramFilesDir&"\
    $pfad[26]=@ProgramFilesDir&"\
    $pfad[27]=@ProgramFilesDir&"\
    $pfad[28]=@ProgramFilesDir&"\
    #ce
    $start=GUICtrlCreateButton("Starten",50,70,100,25)
    $combo=GUICtrlCreateCombo($nameProgramme[0],20,40,155)
    GuiCtrlsetdata(-1,_ArrayToString($nameProgramme,"|", 1,$Programme))

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

    GUISetState()
    While 1
    $msg = GUIGetMsg()
    Switch $msg
    Case -3
    Exit
    Case $start
    $combo=GUICtrlRead($combo)
    For $i=0 to $Programme-1 step +1
    If $combo=$nameProgramme[$i] Then
    $number=$i
    EndIf
    Next
    ShellExecute($pfad[$number])
    Exit
    EndSwitch
    WEnd
    EndFunc

    [/autoit]

    MFG: Blacky

    Kleiner AutoIt Lehrling :)

    Einmal editiert, zuletzt von blackdeath911 (21. März 2010 um 18:42)

  • Hallo blacky,

    schau dir dieses Skript an:

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    #Include <GuiListBox.au3>
    #include <ListboxConstants.au3>
    #include <File.au3>

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

    Global $szDrive,$szDir,$szFName,$szExt

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

    $hGUI = GUICreate("Flaggen", 300, 100)
    $hListe = GUICtrlCreateList("", 10, 10, 180, 80,$LBS_NOTIFY)
    $hNeu = GUICtrlCreateButton("...",200,10,30,25)
    $hVorschau = GUICtrlCreatePic(@ScriptDir & "\Flaggen\NA.jpg", 210, 40, 36, 24)
    GUISetState()

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    case $hNeu
    $sAlt = GUICtrlRead($hListe)
    $sPlus = FileOpenDialog("Land auswählen:",@ScriptDir & "\Flaggen","Bilder (*.jpg)",3,"",$hGUI)
    _PathSplit($sPlus,$szDrive,$szDir,$szFName,$szExt)
    ConsoleWrite($szFName & @CRLF)
    _GUICtrlListBox_InsertString($hListe,$szFName,0)
    Case $hListe
    GUICtrlSetImage($hVorschau, @ScriptDir & "\Flaggen\" & GUICtrlRead($hListe) & ".jpg")
    EndSwitch
    WEnd

    [/autoit]

    du benötigst dazu noch autoit.de/wcf/attachment/8336/

    mfg (Auto)Bert