rechteckigen Bereich für Screenshot per Maus auswählen

  • Hi Leute,

    zur Zeit programmiere ich an einem Tool, mitdem ich per Hotkeys Screenshots machen kann, welche dann mit einem Kommentar abgespeichert werden um später daraus eine kleine Zusammenstellung in HTML zu machen.

    Soweit läuft das auch mit Screenshots des komplette Bildschirms. Das Problem ist, dass ich oftmals nicht nur den gesamten Bildschirm, sondern nur einen kleinen Ausschnitt festhalten will.

    Ich möchte das von der Bedienung so realisieren wie Microsoft mit dem Snipping Tool. Also dass man ein Rechteck mit der Maus aufziehen kann.

    Hat jemand eine Idee, wie sich das realisieren lässt?

    Grüße
    Atreyus

    Einmal editiert, zuletzt von Atreyus (6. August 2012 um 11:58) aus folgendem Grund: danke :-)

  • Kannst mit GDI+ machen:

    Spoiler anzeigen
    [autoit]

    #include <GDIPlus.au3>
    #include <WinAPI.au3>
    #include <WindowsConstants.au3>

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

    _GDIPlus_Startup()
    HotKeySet("{ESC}", "_Exit")

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

    $hDummy = GUICreate("")
    $hGUI = GUICreate("", @DesktopWidth, @DesktopHeight, 0, 0, $WS_POPUP, BitOR($WS_EX_LAYERED, $WS_EX_TOPMOST, $WS_EX_TRANSPARENT), $hDummy)
    GUISetBkColor(0xABCDEF, $hGUI)
    _WinAPI_SetLayeredWindowAttributes($hGUI, 0xABCDEF, 255)

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

    $hPen = _GDIPlus_PenCreate(0xFFFF0000, 4)
    $hGraphics = _GDIPlus_GraphicsCreateFromHWND($hGUI)
    GUISetState()

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

    _GDIPlus_GraphicsDrawRect($hGraphics, 100, 100, 200, 200, $hPen)

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

    While Sleep(100)
    WEnd

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

    Func _Exit()
    _GDIPlus_GraphicsDispose($hGraphics)
    _GDIPlus_PenDispose($hPen)
    GUIDelete($hGUI)
    GUIDelete($hDummy)
    Exit
    EndFunc ;==>_Exit

    [/autoit]

    Andy hat mir ein Schnitzel gebacken aber da war ein Raupi drauf und bevor Oscar das Bugfixen konnte kam Alina und gab mir ein AspirinJunkie.