Hotkey, send & co

  • erstmal ein hallo an die autoit com,

    aus übungszwecken (bin anfänger) schreibe ich mir kleine scripts um die funktionen kennenzulernen und zu verstehen.
    folgendes script wählt auf tastendruck einen pinsel+form+deckkfraft (bildbearbeitungsprg.), soll aber ggf. die taste auch in ein eingabefeld schreiben.

    Spoiler anzeigen
    [autoit]

    HotKeySet("+!d", "Terminate") ; Shift-Alt-d
    HotKeySet("{2}", "Pinsel"); Pinsel auf Quadrat und 20% Deckkraft

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

    ; -------------
    While 1
    WEnd
    ; -------------

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

    Func Pinsel()
    HotKeySet("{2}"); hotkey löschen
    Send ("{2}"); pinselmenu aktivieren
    Send ("{1}"); quadrat pinsel wählen
    Send ("{#}"); pinselmenu einmal runter schalten
    Send ("{2}"); deckkraft 20% wählen
    Send ("{+}"); pinselmenu einmal hoch schalten
    Send ("{BS 4}"); 4 x Backspace (damit beim schreiben nur die 2 erscheint)
    HotKeySet("{2}", "Pinsel") ; hotkey aktivieren
    EndFunc

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

    Func Terminate()
    MsgBox(0, "Mein erstes Skript!", "ENDE")
    Exit 0
    EndFunc

    [/autoit]

    es funktioniert zwar so wie ich es mir vorgestellt habe, aber meine frage ist ob es nicht eine andere möglichkeit gibt nur die "2" in ein eingabefeld zu schreiben.

    wo ich grad dabei bin...rctrl ist laut hilfe von win reserviert.gibt es eine möglichkeit dies zu umgehen und zb. rctrl 1 als hotkey zu benutzen ?

    danke im vorraus...und nicht mit dem kopf auf den tisch knallen :love:

  • Hi,
    ich kenne dein Grafikprogramm nicht, aber wenn es mit den "Standard-Controls" arbeitet, dann haste Glück.
    Versuch einfach mal per Autoit-Infotool die folgenden Informationen auszulesen:
    Title, Text(Optional, sonst ""), ClassnameNN
    dann kannst du mit controlsettext arbeiten ;)
    (die Hilfedatei wird dir helfen^^)
    dies ist der Aufbau des Befehls:
    Controlsettext(Fenstername,Text,ID des controls, gewünschter Text)
    PS: mit Hotkeyset("^k","Funktion") kannste auf Strg+K eine Funktion legen
    //Edit: das k muss in der Hotkeyset Funktion klein geschrieben werden

    Wer immer nur das tut, was er bereits kann - wird auch immer nur das bleiben, was er bereits ist!