Bild Position eintragen und auslesen

  • Ich habe ein Bild (Picture)

    Dieses Bild soll meinetwegen Oben Links die position 0 und unten Rechts 1 haben...

    Soll heißen:

    Links oben = 0 , 0
    Rechts oben = 0 , 1
    Links unten = 1, 0
    Rechts unten = 1 , 1

    Allerdings weiß ich nicht wie ich das dem Bild verklickern kann !
    Ausserdem soll er noch bei einem Klick auf eine Position anzeigen, wo man drauf geklickt hat ...

    In der Hilfe habe ich schon "picture" eingegeben, aber nichts gefunden :(

    Hoffe mir kann jemand helfen ...

    Es gibt sehr viele Leute, die glauben. Aber aus Aberglauben.
    - Blaise Pascal

  • Zitat

    Keiner ne antwort ?


    Ne, keiner Lust :P.
    Meinst du das so?:

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>

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

    $iX = 5
    $iY = 5
    $iWidth = 100
    $iHeight = 50

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

    $hWnd = GUICreate("Beispiel", 400, 400)
    $cPic = GUICtrlCreatePic(@ScriptDir & "\Test.jpg", $iX, $iY, $iWidth, $iHeight)
    GUISetState()

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

    While 1
    Switch GUIGetMsg()
    Case $GUI_EVENT_CLOSE
    Exit
    Case $cPic
    MsgBox(0, "", "X=" & $iX & " Y=" & $iY & " Breite=" & $iWidth & " Höhe=" & $iHeight)
    EndSwitch
    WEnd

    [/autoit]


    Es ist schwer zu verstehen was du eigentlich willst. :rolleyes:

  • Ich würde das jetzt eher so verstehen, das er eine Aktion ausführen möchte wenn auf einen bestimmten Koordinatenbereich innerhalb des Bildes geklickt wird, z.B. die obere-linke Ecke.

    PS: pushen nach nichtmal einer Stunde muss nicht sein.

  • [autoit]

    GuiCtrlCreatePic

    [/autoit]

    ist die Lösung

    mfg (Auto)Bert

  • Nicht wie ich ein Bild erstelle -.-


    name22, auch nicht -.-


    Ich klicke auf das bild, und er sagt mir auf WELCHE position im Bild ich geklickt habe ...

    Es gibt sehr viele Leute, die glauben. Aber aus Aberglauben.
    - Blaise Pascal

  • Simples Beispiel mit GUIGetCourorInfo(). Es werden die Koordinaten innerhalb der GUI ausgegeben, nicht die Koordinaten innerhalb des Bildes. Allerdings kennt man ja die Position des Bildes in der GUI, von daher sollte as kein Problem darstellen.

    [autoit]


    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    $Form1 = GUICreate("Form1", 404, 393, 254, 124)
    $Pic1 = GUICtrlCreatePic(@ScriptDir & "\2.jpg", 8, 8, 388, 380, 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
    _getpos()
    EndSwitch
    WEnd

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

    Func _getpos()
    $pos = GUIGetCursorInfo()
    MsgBox(64, "", $pos[0] & " " & $pos[1])
    EndFunc

    [/autoit]