Alternative zu GUICtrlCreatePic

  • Einige z.B. mit GDI-Plus :

    [autoit]

    _GDIPlus_ImageLoadFromFile
    _GDIPlus_GraphicsDrawImage

    [/autoit]
  • so :P :

    [autoit]


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

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

    $Form1 = GUICreate("Form1", 379, 258)
    GUISetState(@SW_SHOW)

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

    _GDIPlus_Startup()

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

    $gGraphics = _GDIPlus_GraphicsCreateFromHWND ( $Form1 )
    $Image = _GDIPlus_ImageLoadFromFile ( @ScriptDir&"\Pic.jpg")
    _GDIPlus_GraphicsDrawImage ( $gGraphics , $Image , 0 , 0 )

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

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

    EndSwitch
    WEnd

    [/autoit]
  • Danke. Gibr es noch eine Möglichkeit, Pics auf eine GUI anzubringen bzw. den mit GDI+ erstellten Pic vor dem Wegwischen zu schützen??

    Wie meinst du das? ^^

  • das geht so :

    Spoiler anzeigen
    [autoit]


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

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

    $Form1 = GUICreate("Form1", 379, 258)
    GUISetState(@SW_SHOW)

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

    _GDIPlus_Startup()

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

    $gGraphics = _GDIPlus_GraphicsCreateFromHWND ( $Form1 )
    $Image = _GDIPlus_ImageLoadFromFile ( @ScriptDir&"\Pic.jpg")
    _GDIPlus_GraphicsDrawImage ( $gGraphics , $Image , 0 , 0 )

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

    GUIRegisterMsg ( 0x000F, "wm_paint" )

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

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

    EndSwitch
    WEnd

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

    Func wm_paint ()
    _GDIPlus_GraphicsDrawImage ( $gGraphics , $Image , 0 , 0 )
    EndFunc

    [/autoit]