#include <GuiConstants.au3>
#include <GdiPlus.au3>;das include
#include <Misc.au3>
OnAutoItExitRegister("_end") ; die Funktion _end am Ende des Scriptes ausführen
[/autoit][autoit][/autoit][autoit]$x = 0; Poition von Bild auf X-Achse
$y = 0; Poition von Bild auf Y-Achse
$Gui = GUICreate("Beispiel", 500, 500, 100, 100); GUI erstellen
GUISetState(@SW_SHOW); Anzeigen
_GDIPlus_Startup() ;Gdi starten
[/autoit][autoit][/autoit][autoit]$figur = _GDIPlus_ImageLoadFromFile(@ScriptDir & "\tux.jpg"); Meine Bild reinladen
$background = _GDIPlus_ImageLoadFromFile(@ScriptDir & "\al.png")
$Matrix = _GDIPlus_ImageLoadFromFile(@ScriptDir & "\hd.jpg")
$height = _GDIPlus_ImageGetHeight($figur); Größe meines Bildes ermitteln (Höhe)
$width = _GDIPlus_ImageGetWidth($figur); Größe meines Bildes ermitteln (Breite)
$verhaelnis = $height / $width; Verhältnis ausrechen, damit kleiner
$graphic = _GDIPlus_GraphicsCreateFromHWND($Gui); Object um drauf zu malen
$hBitmap = _GDIPlus_BitmapCreateFromGraphics(500, 500, $graphic) ; Bitmap-Objekt mit bezug auf unsere Grafik erstellen
$hBackbuffer = _GDIPlus_ImageGetGraphicsContext($hBitmap) ; Grafik-Kontext holen.
$bitmap = _GDIPlus_BitmapCreateFromGraphics($width, $height, $graphic) ;erstelle Bitmap von der Grafik
$backbuffer = _GDIPlus_ImageGetGraphicsContext($bitmap) ;erstelle Grafik Kontext von der Bitmap (dient für die Doppeltbufferung der Grafik, damit die Bewegungen flüssiger aussehen
_GDIPlus_GraphicsSetSmoothingMode($backbuffer, 2) ; da
[/autoit][autoit][/autoit][autoit]While 1
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE ; Event CLose
Exit
EndSwitch
[/autoit][autoit][/autoit][autoit]If _IsPressed(25) And $x >= 0 Then; Links pfeiltaste änder die koordinaten so, dass bild sich nach links beweg
$x -= 7
EndIf
If _IsPressed(26) And $y >= 0 Then; Oben pfeiltaste änder die koordinaten so, dass bild sich nach oben bewegt!
$y -= 7
EndIf
If _IsPressed(27) And $x <= 480 Then; Rechts pfeiltaste änder die koordinaten so, dass bild sich nach rechts bewegt!
$x += 7
EndIf
If _IsPressed(28) And $y <= 480 Then; Runter pfeiltaste änder die koordinaten so, dass bild sich nach unten bewegt!
$y += 7
EndIf
_GDIPlus_GraphicsDrawImageRect($hbackbuffer, $background, 0, 0, 500, 500)
_GDIPlus_GraphicsDrawImageRect($hbackbuffer, $figur, $x, $y, 20, 20 * $verhaelnis) ;die Figur wird an der neuen Position gezeichnet
_GDIPlus_GraphicsDrawImageRect($graphic, $hBitmap, 0, 0, 500, 500)
;($graphic = Unser Hintergrund also Wodrauf er neuzeichnen soll)
;($figur= Was er neuzeichnen soll also unser Bild!)
;($x= Die veränderte X Koordinate)
;($y= Die veränderte Y Koordinate)
;(20 = Die Größe(Weite!) )
;(20 *$verhaelnis = Die größe(Höhe))
WEnd
Func _end();die Exit funktion
_GDIPlus_GraphicsDispose($graphic);Grafik Objekt freigeben
_GDIPlus_ImageDispose($figur);Bild Objekt freigeben
_GDIPlus_ImageDispose($background);Bild Objekt freigeben
_GDIPlus_ImageDispose($Matrix);Bild Objekt freigeben
_GDIPlus_Shutdown();Ressourcen freigeben
EndFunc ;==>_end
Hey Community,
könntet Ihr mir villeicht helfen,
ich Idee wie ich zu dem herumfahrenden Männchen bilder von links nach rechts, oben nach unten usw. laufen lassen kann, währen man noch mit dem männchen rumfahren kann.
Es wäre cool, wenn die anderen Bilde auf gebufft sind, damit es nicht flackert, könnte mir evtl, jemand helfen?
Vielen Dank schon im Vorraus!
Liebe Grüße
*scarface*