[VISTA]Autoit V3- Bräuchte hilfe für ein "Hotkey" Programm

  • Hallo an alle,

    bin ganz neu hier im Forum und kenne mich nicht so gut aus mit AutoIt.

    Ich will mir so ein kleines Hotkeyprogramm machen, das wenn ich zb. X drücke das Programm 8 un 9 drückt.
    Die GUI zu machen hat natürlich sehr viel spaß gemacht.^^
    Aber jetzt kommt der Quelltext und ich bräuchte eure Hilfe.
    Die GUI ist hier:
    [Blockierte Grafik: http://img9.imageshack.us/img9/9963/aasssaaforum.png
    Also wie schon gesagt soll die Zahl, die bei "Slot" gewählt wurde, mit einer anderen Taste gedrückt werden. Die andere Taste wählt man bei "Hotkey".
    Die Zahlen sollen jedoch die Zahlen sein, die auf der Tastatur ÜBER den Buchstaben stehen(also nicht Numbpad).
    XXX,YYY usw. soll das ganze halt aktivieren bzw. deaktivieren. "Button1" soll das ganze speichern.
    Ich hoffe ich habs verständlich formuliert .^^ Wenn ihr Fragen dann schreibt einfach.
    Danke im Voraus
    Aydo :)

    Einmal editiert, zuletzt von Aydo (12. März 2009 um 20:36)

  • [autoit]

    guicreate('')
    guisetstate()
    $hotkey1=guictrlcreateinput('Schreib hier den Hotkey rein',15,15)
    $slot=guictrlcreateinput('Was soll gesendet werden?',15,35)
    $go=guictrlcreatebutton('start',10,60)
    guictrlcreatelabel('MfG. tobi_girst und viel Spaß im Forum!',100,100)
    func _1()
    send(guictrlread($slot))
    endfunc
    while 1
    if guigetmsg()=$go then hotkeyset(guictrlread($hotkey1),'_1')

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

    wend

    [/autoit]

    MfG. tobi_girst

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »tobi_girst« (Morgen, 25:63)

  • Also Speichern ist ziemlich einfach über GUICtrlRead() in eine Variable reinpacken...

    Nun machst du einfach HotKeySet($blabla, "0") oder so. Für blabla setzt du den Hotkey ein, der gedrückt wurde.

    In die Funktion machst du einfach Send(). AutoIt nimmt automatisch die Zahlen über den Buchstaben. Die Numpad-Zahlen werden anders ausgewählt...

  • Danke für die schnellen Antworten,

    Hab da aber noch eine Frage :)
    Ich will das ganze ja nicht via Button betätigen, sondern so:
    Wenn XXX, YYY ect. angekreutzt ist, drücke ich den "Hotkey" und das Programm drück "Slot".
    Wie genau geht das ?

    EDIT: Außerdem buggt das ganze ohne Stop Button. :( Was in meinem Fall "Kein Kreuzchen" wäre.

    Einmal editiert, zuletzt von Aydo (12. März 2009 um 19:41)

  • Habs jetzt mit 2 Radios gemacht:

    [autoit]

    guicreate('')
    guisetstate()
    $hotkey1=guictrlcreateinput('Schreib hier den Hotkey rein',15,15)
    $slot=guictrlcreateinput('Was soll gesendet werden?',15,35)
    $go=guictrlcreateradio('start',10,60)
    $stop=guictrlcreateradio('stop',50,60)
    guictrlcreatelabel('MfG. tobi_girst und viel Spaß im Forum!',100,100)
    func _1()
    send(guictrlread($slot))
    endfunc
    while 1
    if guigetmsg()=$go=true then hotkeyset(guictrlread($hotkey1),'_1')
    if guigetmsg()=$stop=true then hotkeyset(guictrlread($hotkey1))
    wend

    [/autoit]


    Mit Checkboxen wendest du dich besser an einen Profi!

    MfG. tobi_girst

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »tobi_girst« (Morgen, 25:63)

  • Vielen Dank! Klappt auch so. :)
    Ich hätte da noch eine letzte Frage: Ich kann nicht auf das Kreuz (zum schliesen des Fensters) drücken.
    Wenn ich drauf drücke passiert nichts. ?(

  • Ich weß, war zu faul das einzubauen...
    Am anfang musst do #include<guiconstantsex.au3> machen und in der whil-Schleife

    [autoit]

    if guigetmsg()=$gui_event_close then exitloop

    [/autoit]


    Schau mal in die Hilfe bei GuiCreate, da findest du's nochmal

    MfG. tobi_girst

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »tobi_girst« (Morgen, 25:63)