Fremde Combobox ansteuern

  • Tag auch ;)

    Ich würde gerne von einem Programm mit dem Titel: MorphVOX Pro
    eine Combobox ansteuern, und ein bestimmten Text auswählen lassen.
    Ich hab mich schon umgesehen und ein Beispiel gefunden welches aber nicht Funtktioniert.

    Hier mal das was die Autoit Info sagt:

    Spoiler anzeigen

    >>>> Window <<<<
    Title: MorphVOX Pro
    Class: WindowsForms10.Window.8.app.0.33c0d9d
    Position: 924, 236
    Size: 906, 777
    Style: 0x16CF0000
    ExStyle: 0x00050100
    Handle: 0x00000000000103D6

    >>>> Control <<<<
    Class: WindowsForms10.COMBOBOX.app.0.33c0d9d
    Instance: 2
    ClassnameNN: WindowsForms10.COMBOBOX.app.0.33c0d9d2
    Name: comboBoxBackground
    Advanced (Class): [NAME:comboBoxBackground]
    ID: 132172
    Text:
    Position: 365, 551
    Size: 172, 21
    ControlClick Coords: 22, 8
    Style: 0x56010243
    ExStyle: 0x00000000
    Handle: 0x000000000002044C

    >>>> Mouse <<<<
    Position: 1319, 825
    Cursor ID: 0
    Color: 0x353584

    >>>> StatusBar <<<<

    >>>> ToolsBar <<<<

    Und hier mein Script:

    [autoit]

    ControlCommand("MorphVOX Pro","","WindowsForms10.COMBOBOX.app.0.33c0d9d2","SetCurrentSelection","M4.mp3")

    [/autoit]

    Ich sehe keinen Fehler, aber ich finde Komisch was mir als classnameNN ausgespuckt wird bei der Autoit-Info welches ich für den 3. Parameter brauche.
    (WindowsForms10.COMBOBOX.app.0.33c0d9d2)

    Gibt es andere Möglichkeiten oder erkennt jemand warum es nicht funktioniert?

    Freue mich über Antworten ;)

    Sind TV-Quizfragen zu einfach? A) Ja B) Harry Potter

    Spoiler anzeigen

    Ich gebe zu dieser Post hat wahrscheinlich nicht viel geholfen,
    aber ich versuche wenigstens zu helfen :rolleyes:

    Einmal editiert, zuletzt von PuReIroNie (7. Juni 2013 um 15:07)

  • Ja ich habe auf Arbeit ähnlich garstige Programme gebändigt und das hat einiges an Zeit (Google und Forensuche) und Nerven gekostet :D
    ControlCommand arbeitet nur mit standard Windows controls.
    ClassName WindowsForms10.COMBOBOX.app.X.XXXXXXXX ist kein Standard Control ;)
    (NET Framework)

    Das ist kein Windowsstandardcontrol, daher ist das etwas tricky ;)
    Probier mal so, nimm die Advanced (Class) und den Titel und dann hole davon das Controlhandle und dann kannst du es auch ansprechen ;)

    [autoit]

    #include <GuiComboBox.au3>; nicht vergessen, alsobei deinen ivorhandenen includes mit angeben !
    $title = "MorphVOX Pro"
    $combobox = "[NAME:comboBoxBackground]"
    $auswahltitel = "M4.mp3"
    $hcombobox = ControlGetHandle($title, "", $combobox); holt das handle für die Combobox
    _GUICtrlComboBox_SelectString($hcombobox, $auswahltitel)
    ;das hier brauch ich z.B bei meinem Program noch zusätzlich, dadurch wird die selektierte Auswahl dann auch gültig bzw ausgeführt wird
    ; Quelle/Tipp aus dem englischen Forum http://www.autoitscript.com/forum/topic/10…box-click-item/
    $iCode = $CBN_SELCHANGE
    $val = BitShift($iCode, -16)
    $handle = WinGetHandle($title, "")
    _SendMessage($handle, $WM_COMMAND, $val, $hcombobox); sendet die Message an die Combobox das die Auswahl sich geändert hat

    [/autoit]

    ;den grünen Text kannst du natürlich weglassen der ist nur zur Info :D

  • Vielen Dank funktioniert Super.

    Sind TV-Quizfragen zu einfach? A) Ja B) Harry Potter

    Spoiler anzeigen

    Ich gebe zu dieser Post hat wahrscheinlich nicht viel geholfen,
    aber ich versuche wenigstens zu helfen :rolleyes: