Button mit Taste drücken?

  • Hey,
    Ich habe hier eine kleine GUI:

    [autoit]


    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    $Form1 = GUICreate("Test", 633, 448, 192, 124)
    $Pic1 = GUICtrlCreatePic("Test.jpg", 100, 100, 30, 30, BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS))
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Pic1
    MsgBox(0, "Test", "Das ist ein Test für den gemalten Button!")

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

    EndSwitch
    WEnd

    [/autoit]

    Wenn ich nun auf das Bild klicke kommt ja die MsgBox, jetzt wollte ich einmal fragen ob ich das auch machen kann wenn ich auf der Tastatur Enter drücke. Weiß nicht wie ich das machen sollte :D


    lg Zaziki

    /Edit: Gelöst ;)

    Einmal editiert, zuletzt von Zaziki (24. August 2010 um 17:45)

    • Offizieller Beitrag

    Dazu kannst du GUISetAccelerators benutzen, schau dir am besten die Hilfe dazu an.

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    $Form1 = GUICreate("Test", 633, 448, 192, 124)
    $Pic1 = GUICtrlCreatePic("Test.jpg", 100, 100, 30, 30, BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS))
    GUISetState(@SW_SHOW)
    Dim $AccelKeys[1][2]=[["{ENTER}", $Pic1]]

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

    GUISetAccelerators($AccelKeys)
    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Pic1
    MsgBox(0, "Test", "Das ist ein Test für den gemalten Button!")

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

    EndSwitch
    WEnd

    [/autoit]
  • Etwas gefuscht aber den Focus auf das Bild/Button legen. ;)

    Achtung Anfänger! :whistling:

    Betrachten des Quellcodes auf eigene Gefahr, bei Übelkeit,Erbrechen,Kopfschmerzen übernehme ich keine Haftung. 8o