Ich arbeite gerade an einem Brettspiel.
Dafür soll es einen Button geben der Den Würfel wirft (und das Bild dreht).
Allerdings verschwindet der würfel nur.
Spoiler anzeigen
#include <GDIplus.au3>
#include <GUIConstants.au3>
#include <Windowsconstants.au3>
#include <SliderConstants.au3>
#include <EditConstants.au3>
Opt("GUIOnEventMode", 1)
[/autoit] [autoit][/autoit] [autoit];~ #NoTrayIcon
[/autoit] [autoit][/autoit] [autoit]_GDIPlus_Startup()
[/autoit] [autoit][/autoit] [autoit]Global $dice = _GDIPlus_BitmapCreateFromFile(@ScriptDir & "\dice.gif")
[/autoit] [autoit][/autoit] [autoit]Global $sizedice_x = _GDIPlus_ImageGetWidth($dice)
Global $sizedice_y = _GDIPlus_ImageGetHeight($dice)
$guiwidth = @DesktopWidth/2
$guiheigth = @DesktopHeight/1.5
Global $hWnd = GUICreate("Spiel zur Erlösung",$guiwidth,$guiheigth, -1, -1, Default)
$rolldicebutton = GUICtrlCreateButton("Roll Dice",$guiwidth-120,$guiheigth - 100,100,50)
$diceresultinput = GUICtrlCreateInput("",$guiwidth-120,$guiheigth - 40,100,20)
GUISetOnEvent($GUI_EVENT_CLOSE,"_exit",$hWnd)
GUICtrlSetOnEvent($rolldicebutton,"rolldice")
GUISetState(@SW_SHOW,$hWnd)
[/autoit] [autoit][/autoit] [autoit]Global $hGraphics = _GDIPlus_GraphicsCreateFromHWND($hWnd)
[/autoit] [autoit][/autoit] [autoit]_GDIPlus_GraphicsDrawImage($hGraphics, $dice,$guiwidth/1.4,$guiheigth/1.2)
[/autoit] [autoit][/autoit] [autoit]Global $hdiceBitmap = _GDIPlus_BitmapCreateFromGraphics($sizedice_x, $sizedice_y, $hGraphics)
Global $hdiceBackbuffer = _GDIPlus_ImageGetGraphicsContext($hdiceBitmap)
Global $hdiceMatrix = _GDIPlus_MatrixCreate()
_GDIPlus_MatrixTranslate($hdiceMatrix, $sizedice_x / 2, $sizedice_y / 2)
While 1
WEnd
Func rolldice()
GUICtrlSetData($diceresultinput,Random(1,6,1))
$count = 1
For $count = 1 to 12 Step 1
_GDIPlus_GraphicsClear($hdiceBackbuffer, 0xFFFFFFFF)
_GDIPlus_MatrixRotate($hdiceMatrix,10, 0)
_GDIPlus_GraphicsSetTransform($hdiceBackbuffer, $hdiceMatrix)
;~ _GDIPlus_GraphicsSetTransform($hGraphics, $hdiceMatrix)
;~ _GDIPlus_GraphicsDrawImage($hdiceBackbuffer, $dice, $sizedice_x / 2,$sizedice_y / 2)
_GDIPlus_GraphicsDrawImageRect($hdiceBitmap, $hdiceBackbuffer,$guiwidth/1.4,$guiheigth/1.2, $sizedice_x, $sizedice_y)
_GDIPlus_GraphicsDrawImage($hGraphics, $hdiceBitmap, $guiwidth/1.4,$guiheigth/1.2)
;~ _GDIPlus_GraphicsDrawImageRect($hGraphics, $hdiceBitmap,$guiwidth/1.4,$guiheigth/1.2, $sizedice_x, $sizedice_y)
Next
EndFunc
Func _Exit()
_GDIPlus_Shutdown()
Exit
EndFunc
Für Hilfe wäre ich dankbar.