Radio Button

  • hallo Leutz,

    ich quäle mich hier mit der Aktivierung von RadioButton. Ich habe mal drei Bilder mit angehängt zum besseren Verständnis. Ich habe mich mit dem

    [autoit]

    ControlCommand

    [/autoit]

    befasst. Leider bekomme ich es nicht hin das einer aktiviert wird.

    [autoit]

    ControlCommand("ADTG-Microsoft Business Solutions-Navision","Import CDR's","1000000002","Check","")

    [/autoit]

    Wo liegt mein Fehler das es nicht klappen will? Hat wer noch einen Tip wie es geht?

    MFG

    ThomasB

  • Hi,
    meinst vllt. sowas?

    [autoit]

    #include <GUIConstants.au3>

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

    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("AForm1", 413, 308, 303, 219)
    $Radio1 = GUICtrlCreateRadio("RadioAn", 100, 84, 113, 17)
    GUICtrlSetState(-1, $GUI_UnCHECKED)
    $uRadio2 = GUICtrlCreateRadio("RadioAus", 100, 116, 113, 17)
    GUICtrlSetState(-1, $GUI_UnCHECKED)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###
    ToggleRadio($Radio1)
    While 1
    Switch GUIGetMsg()
    Case $GUI_EVENT_CLOSE
    Exit
    EndSwitch
    WEnd

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

    Func ToggleRadio($Which)
    If GuiCtrlGetState($Which)=$GUI_CHECKED Then
    GuiCtrlSetState($Which, $GUI_UnCHECKED)
    Else
    GuiCtrlSetState($Which, $GUI_CHECKED)
    EndIf
    EndFunc

    [/autoit]

    Gruß
    ytwinky

    (Ich) benutze stets die aktuelle (Beta) und SciTE..

  • Hi Thomasb,

    wenn ich dich richtig verstehe möchtest Du von einem Setup oder einer externen Applikation den RadioButton aktivieren, stimmt's...?!

    Hast Du die Maus auf dem Radio Button gehalten als Du das WindowInfo eingefroren hast ?

    Dann versuch's mal mit ControlClick ...

    Solltest Du die ControlID nicht herausbekommen oder ansprechen können, dann hilft auf jeden Fall MouseClick weiter.


    Gruß
    Greenhorn

    p.s.: Am besten Du stellst dein Script mal hier rein...


    Einmal editiert, zuletzt von Greenhorn (18. März 2007 um 17:51)

  • Hi Thomas,

    woher sollen wir wissen, wo Dein Fehler liegt, wenn Du uns nicht näher beschreibst, wie Du es bisher ausprobiert hast? Du hast ja nur Screenshots gepostet und keinen Code. ;)

    Hier mal eine nette Spielerei, von der ich mir aber ziemlich sicher bin, dass Du sie so nicht brauchst, da Du ja offensichtlich ein Fremdprogramm ansteuern willst.

    [autoit]

    #include <GUIConstants.au3>

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

    Opt ("GUIOnEventMode", 1) ; in OnEvent-Mode schalten

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

    Global $Radio[4], $i

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

    $MainWindow = GUICreate ("Demo", 200, 200, 200, 200)
    GUISetOnEvent ($GUI_EVENT_CLOSE, "CLOSEClicked")
    $Radio[0] = GUICtrlCreateRadio ("Erde", 70, 40, 100, 15)
    $Radio[1] = GUICtrlCreateRadio ("Mars", 70, 70, 100, 15)
    $Radio[2] = GUICtrlCreateRadio ("Jupiter", 70, 100, 100, 15)
    $Radio[3] = GUICtrlCreateRadio ("Pluto", 70, 130, 100, 15)
    GUISetState(@SW_SHOW)

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

    While 1
    GUICtrlSetState ($Radio[$i], $GUI_CHECKED)
    Sleep (1000)
    $i = Mod ($i+1, 4)
    WEnd

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

    Func CLOSEClicked()
    Exit
    EndFunc

    [/autoit]
  • Hi,

    ich habe mal ein kleine Beispiel geschrieben wie mann z.B. bei Notepad die Seite auf Querformat umstellen kann.

    [autoit]


    Run("notepad.exe")
    WinWait("Unbenannt")
    send("!d+r")
    ControlClick("Seite einrichten","&Querformat","Button4")
    ControlClick("Seite einrichten","OK","Button6")

    [/autoit]

    Dein Lösungsansatz wäre:

    [autoit]


    ControlClick("Import CDR's","&<Text>","<ClassNameNN>")

    [/autoit]

    &<Text> = Hier kommt der Text des Feldes rein welches du auswählen möchtest(siehe Autoit Info)

    <ClassNameNN> = Ist die Name des ausgwähleten Feld.

    MfG
    Der_Doc

  • hallo,

    Es handelt sich hier um ein ext. Programm(Navision) das Nachts mehrere Dateien einlesen soll. Nun kann ich die RadioButton nicht ansprechen, deshalb die Screenshots zum besseren Verständnis. In der Hilfe steht nur das mit ControlCommand man diese ansprechen kann. Das ist mein Problem, der Rest vor dem ControlCommand und danach funktioniert. Auch mit Mouseclick will nicht funktionieren da sich das Feld an unterschiedlichen Stellen öffnet.
    Das würde ich gerne erreichen.

    thomasb

    MFG ThomasB

    *
    Ich lese viel und gerne (und wenn ich alle Mahnungen durch habe, schmeiße ich sie weg)
    *

  • hi,

    wenn es so wäre ginge es. Sie sind alle auf eine Subform die immer den gleichen Namen hat. Somit ist es nicht so einfach wenn nicht die direkte ID angesprochen werden kann.
    Ansonsten habe ich das mit dem ControlClick verstanden.

    ThomasB

    MFG ThomasB

    *
    Ich lese viel und gerne (und wenn ich alle Mahnungen durch habe, schmeiße ich sie weg)
    *

  • Hi Thomas,

    Zitat

    ...Rest vor dem ControlCommand und danach funktioniert. Auch mit Mouseclick will nicht funktionieren da sich das Feld an unterschiedlichen Stellen öffnet.

    Wenn Du MouseClick benutzt, dann musst Du so tun...

    [autoit]

    AutoitSetOption("MouseCoordMode", 0)
    ; Sets the way coords are used in the mouse functions, either absolute coords or coords relative to the current active window:
    ; 0 = relative coords to the active window
    ; 1 = absolute screen coordinates (default)
    ; 2 = relative coords to the client area of the active window

    [/autoit]

    Beim WindowInfoTool musst Du dann auch einstellen das die Maus-Koordinaten relativ zum aktiven Fenster sind !!!
    Das klappt immer !


    Gruß
    Greenhorn