HotKeySet

  • Hio xD

    ALso ich habe HotKeys

    [autoit]

    $HotKey1 = HotKeySet("", "_Mini")
    $HotKey2 = HotKeySet("", "_Maxi")
    $HotKey3 = HotKeySet("", "_Hide")
    $HotKey4 = HotKeySet("", "_Show")

    [/autoit]


    den ich durch ein Befehl eine Taste zuweiße das sieht so aus

    [autoit]

    $Key1 = IniRead(@ScriptFullPath & "Fenster Menü's.ini", "Minimieren", "Key", "error")
    $Key2 = IniRead(@ScriptFullPath & "Fenster Menü's.ini", "Maximieren", "Key", "error")
    $Key3 = IniRead(@ScriptFullPath & "Fenster Menü's.ini", "Verstecken", "Key", "error")
    $Key4 = IniRead(@ScriptFullPath & "Fenster Menü's.ini", "Anzeigen", "Key", "error")
    $HotKey1 = HotKeySet("{" & $Key1 & "}", "_Mini")
    $HotKey2 = HotKeySet("{" & $Key2 & "}", "_Maxi")
    $HotKey3 = HotKeySet("{" & $Key3 & "}", "_Hide")
    $HotKey4 = HotKeySet("{" & $Key4 & "}", "_Show")

    [/autoit]

    aber wenn ich den HotKey Deaktivieren will geht es nicht habe es schon mit verschieden varianten probiert

    Testungen:

    [autoit]

    $Key1 = ""
    $Key2 = ""
    $Key3 = ""
    $Key4 = ""
    $HotKey1 = HotKeySet("{" & $Key1 & "}", "_Mini")
    $HotKey2 = HotKeySet("{" & $Key2 & "}", "_Maxi")
    $HotKey3 = HotKeySet("{" & $Key3 & "}", "_Hide")
    $HotKey4 = HotKeySet("{" & $Key4 & "}", "_Show")

    [/autoit]

    Oder Durch GuictrlDelete(is ja eig Sinlos da es kein STeuerelement ist)

    [autoit]

    GuictrlDelete($HotKey1)
    GuictrlDelete($HotKey2)
    GuictrlDelete($HotKey3)
    GuictrlDelete($HotKey4)

    [/autoit]

    Danke Shconma für eure Hilfe =)

    Einmal editiert, zuletzt von ScripterDrîzzt (22. August 2009 um 20:51)

    • Offizieller Beitrag

    Lese mal die Hilfe von HotKeySet.

    Zitat

    function [optional] The name of the function to call when the key is pressed. Not specifying this parameter will unset a previous hotkey.

    Beispiel:

    [autoit]

    HotKeySet("{PAUSE}", "TogglePause")

    [/autoit]


    wird durch

    [autoit]

    HotKeySet("{PAUSE}")

    [/autoit]


    wieder aufgehoben.

  • danke danke =) ich arebite nur mit @ScriptFullPath weil er da die Ini au glei mit den Ordner haut bei @ScipDir nich (zumindest bei mir )
    und warum is @ScriptDIr besser wie @ScriptFullPath =?^^

  • okay thx pee =)
    Habe alles gleich in Dir umgewandelt =)
    So hier mien ganzer Script und i-wie will das mit den HotKeys imma noch net so gehen wie ich was will ^^

    Spoiler anzeigen
    [autoit]

    Opt("TrayIconHide", 1)

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

    GUICreate("Fenster Menü's", 300, 220)
    GUISetBkColor(0x0FF80)
    $settings = GUICtrlCreateMenu("Datei")
    $laden = GUICtrlCreateMenuItem("Laden", $settings)
    $save = GUICtrlCreateMenuItem("Speichern", $settings)
    $settings1 = GUICtrlCreateMenu("Keys Aktivieren")
    $aktiv = GUICtrlCreateMenuItem("Keys Aktivieren", $settings1)
    $deaktiv = GUICtrlCreateMenuItem("Keys Deaktivieren", $settings1)
    $settings2 = GUICtrlCreateMenu("Wichtig")
    $info = GUICtrlCreateMenuItem("Infos zu den Key's", $settings2)
    GUICtrlCreateLabel("Key für MINIMIEREN äuswählen", 30, 30)
    $Min = GUICtrlCreateInput("Key", 200, 28, 70, 20,$ES_CENTER)
    GUICtrlCreateLabel("Key für MAXIMIEREN äuswählen", 30, 60)
    $Max = GUICtrlCreateInput("Key", 200, 58, 70, 20,$ES_CENTER)
    GUICtrlCreateLabel("Key für VERSTECKEN äuswählen", 30, 90)
    $Hide = GUICtrlCreateInput("Key", 200, 88, 70, 20,$ES_CENTER)
    GUICtrlCreateLabel("Key für ANZEIGEN äuswählen", 30, 120)
    $Show = GUICtrlCreateInput("Key", 200, 118, 70, 20,$ES_CENTER)
    GUICtrlCreateLabel("Name des Fensters ?!", 100, 150)
    $Name = GUICtrlCreateInput("Den korrekten Fenster-Titel hier eingeben !!!", 30, 168, 240, 20,$ES_CENTER)
    GUICtrlCreateGroup("Keys/Tasten der Einzelnen Funktionen", 15, 5, 270, 190)
    GUICtrlSetColor(-1, 0xFF0000)
    GUICtrlSetState($deaktiv, $GUI_DISABLE)
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $save
    _Save()
    Case $laden
    _load()
    Case $aktiv
    _HotKeySet()
    Case $deaktiv
    _DeAktivHotKeySet()
    Case $info
    MsgBox(0, "Key Infos", "Die Strg,Windows,Alt+Gr,Shift und Alt Tasten können nicht verwenden werden" & (@CRLF) & "Wenn Sie mehrere Keys gleichzeitig drücken wollen, müssen Sie es so angeben siehe Beispiel" & (@CRLF) & "z.B. AP(Für A und P drücken) oder AH(Für A und H drücken), wenn Sie die F-Tasten haben wollen einfach F1 schreiben")
    EndSwitch
    WEnd

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

    Func _Save()
    IniWrite(@ScriptDir & "Fenster Menü's.ini", "Minimieren", "Key", GUICtrlRead($Min))
    IniWrite(@ScriptDir & "Fenster Menü's.ini", "Maximieren", "Key", GUICtrlRead($Max))
    IniWrite(@ScriptDir & "Fenster Menü's.ini", "Verstecken", "Key", GUICtrlRead($Hide))
    IniWrite(@ScriptDir & "Fenster Menü's.ini", "Anzeigen", "Key", GUICtrlRead($Show))
    IniWrite(@ScriptDir & "Fenster Menü's.ini", "Fenster", "Name", GUICtrlRead($Name))
    $settings1 = GUICtrlRead($deaktiv)
    If $settings1 = 68 Then IniWrite(@ScriptDir & "Fenster Menü's.ini", "Key's", "Status", "aktiv")
    If $settings1 = 132 Then IniWrite(@ScriptDir & "Fenster Menü's.ini", "Key's", "Status", "inaktiv")
    EndFunc ;==>_Save

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

    Func _load()
    GUICtrlSetData($Min, IniRead(@ScriptDir & "Fenster Menü's.ini", "Minimieren", "Key", "error"))
    GUICtrlSetData($Max, IniRead(@ScriptDir & "Fenster Menü's.ini", "Maximieren", "Key", "error"))
    GUICtrlSetData($Hide, IniRead(@ScriptDir & "Fenster Menü's.ini", "Verstecken", "Key", "error"))
    GUICtrlSetData($Show, IniRead(@ScriptDir & "Fenster Menü's.ini", "Anzeigen", "Key", "error"))
    GUICtrlSetData($Name, IniRead(@ScriptDir & "Fenster Menü's.ini", "Fenster", "Name", "error"))
    $ReadKey = IniRead(@ScriptDir & "Fenster Menü's.ini", "Key's", "Status","Nicht vorhanden")
    If $ReadKey = "aktiv" Then
    GUICtrlSetState($deaktiv, $GUI_ENABLE)
    GUICtrlSetState($aktiv,$GUI_DISABLE)
    EndIf
    EndFunc ;==>_load

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

    Func _HotKeySet()
    $Key1 = IniRead(@ScriptDir & "Fenster Menü's.ini", "Minimieren", "Key", "error")
    $Key2 = IniRead(@ScriptDir & "Fenster Menü's.ini", "Maximieren", "Key", "error")
    $Key3 = IniRead(@ScriptDir & "Fenster Menü's.ini", "Verstecken", "Key", "error")
    $Key4 = IniRead(@ScriptDir & "Fenster Menü's.ini", "Anzeigen", "Key", "error")
    $HotKey1 = HotKeySet("{" & $Key1 & "}", "_Mini")
    $HotKey2 = HotKeySet("{" & $Key2 & "}", "_Maxi")
    $HotKey3 = HotKeySet("{" & $Key3 & "}", "_Hide")
    $HotKey4 = HotKeySet("{" & $Key4 & "}", "_Show")
    GUICtrlSetState($aktiv, $GUI_DISABLE)
    GUICtrlSetState($deaktiv, $GUI_ENABLE)
    EndFunc ;==>_HotKeySet

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

    Func _DeAktivHotKeySet()
    $HotKey1 = HotKeySet("{PAUSE}")
    $HotKey2 = HotKeySet("{PAUSE}")
    $HotKey3 = HotKeySet("{PAUSE}")
    $HotKey4 = HotKeySet("{PAUSE}")
    GUICtrlSetState($deaktiv, $GUI_DISABLE)
    GUICtrlSetState($aktiv, $GUI_ENABLE)
    EndFunc ;==>_DeAktivHotKeySet

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

    Func _Mini()
    $FesnterN = IniRead(@ScriptDir & "Fenster Menü's.ini", "Fenster", "Name", "error")
    WinSetState($FesnterN, "", @SW_MINIMIZE)
    WinSetState("Fenster Menü's", "", @SW_MINIMIZE)
    EndFunc ;==>_Mini

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

    Func _Maxi()
    $FesnterN = IniRead(@ScriptDir& "Fenster Menü's.ini", "Fenster", "Name", "error")
    WinSetState($FesnterN, "", @SW_RESTORE)
    WinSetState("Fenster Menü's", "", @SW_RESTORE)
    EndFunc ;==>_Maxi

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

    Func _Hide()
    $FesnterN = IniRead(@ScriptDir & "Fenster Menü's.ini", "Fenster", "Name", "error")
    WinSetState($FesnterN, "", @SW_HIDE)
    WinSetState("Fenster Menü's", "", @SW_HIDE)

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

    EndFunc ;==>_Hide

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

    Func _Show()
    $FesnterN = IniRead(@ScriptDir & "Fenster Menü's.ini", "Fenster", "Name", "error")
    WinSetState($FesnterN, "", @SW_SHOW)
    WinSetState("Fenster Menü's", "", @SW_SHOW)
    EndFunc ;==>_Show

    [/autoit]
    • Offizieller Beitrag

    Du hast immer noch einen Fehler in deinen INI Befehlen.

    [autoit]

    GUICtrlSetData($Min, IniRead(@ScriptDir & "Fenster Menü's.ini", "Minimieren", "Key", "error"))

    [/autoit]


    Das solltest du mit

    [autoit]

    GUICtrlSetData($Min, IniRead(@ScriptDir & "\Fenster Menü's.ini", "Minimieren", "Key", "error"))

    [/autoit]


    ersetzen, man achte auf das \. ;)

    Edit ein Hotkey wie dieser:

    [autoit]

    $HotKey1 = HotKeySet("{" & $Key1 & "}", "_Mini")

    [/autoit]


    wird so deaktiviert :

    [autoit]

    HotKeySet("{" & $Key1 & "}")

    [/autoit]
  • ah lol dachte mit das der $key drin bleiben musste, aber am anfang ging es so auch nich ^^ Bis ich dann die $Key Variablen in das Global gehauen habe dann ging es xD

    SO RIESEN THX AN Raupi und pee =)
    und is so ein sinlosen tool es wert hochgeladen zu weden?^^

  • mhh du hast recht das verhindert dann auch teilweiße meine schussel fehler =)
    also thx nochma =)

    Und mal ne ganz andere (Fun) Frage wie änderst du dein Rank name? oda wurde das durch pee erledigt xD