1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. UEZ

Beiträge von UEZ

  • Dreieck / Kreis berechnen

    • UEZ
    • 12. März 2010 um 16:21

    Ich glaube ihr denkt zu kompliziert! Ein Dreieck hat 3 Ecken und auf einen Kreis transferiert bedeutet dies, dass alle 120° eine Ecke vom Dreick ist!

    Die x Koordinate kann man über Cos(Grad * Pi /180) * Radius bzw. y Koordinate Sin(Grad * Pi /180) * Radius berechnen.

    Für das Dreickeck bedeutet dies 3 Punkte jeweils mit 120° Differenz!

    Beispiel:

    Spoiler anzeigen
    [autoit]


    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <GUIConstants.au3>
    #include <GDIPlus.au3>

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

    Local Const $width = 800
    Local Const $height = 800
    Local $hGraphics, $hBackbuffer, $hBitmap, $hPen, $i, $pi_div_180 = 4 * ATan(1) / 180
    Local $w_h = $width * 0.5, $h_h = $height * 0.5
    Local $radius_x = $w_h, $radius_y = $h_h
    Local $p1_x, $p1_y, $p2_x, $p2_y, $p3_x, $p3_y
    Local $title = "GDI+ Beispiel von UEZ"

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

    Opt("GUIOnEventMode", 1)
    $hwnd = GUICreate($title, $width, $height, -1, -1, BitOR($WS_SYSMENU,$WS_DLGFRAME,$WS_POPUP))
    GUISetOnEvent($GUI_EVENT_CLOSE, "close")
    GUISetState()
    If @OSBuild < 7600 Then WinSetTrans($hwnd,"", 0xFF)

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

    _GDIPlus_Startup()
    $hGraphics = _GDIPlus_GraphicsCreateFromHWND($hwnd)
    $hBitmap = _GDIPlus_BitmapCreateFromGraphics($width, $height, $hGraphics)
    $hBackbuffer = _GDIPlus_ImageGetGraphicsContext($hBitmap)
    _GDIPlus_GraphicsSetSmoothingMode($hBackbuffer, 2)
    $hPen = _GDIPlus_PenCreate(0xFFFFFFFF, 2)

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

    Do
    _GDIPlus_GraphicsClear($hBackbuffer)
    $p1_x = $w_h + Cos($i * $pi_div_180) * $radius_x ;x Koordinate vom 1. Punkt
    $p1_y = $h_h + Sin($i * $pi_div_180) * $radius_y ;y Koordinate vom 1. Punkt
    $p2_x = $w_h + Cos(($i + 120) * $pi_div_180) * $radius_x ;x Koordinate vom 2. Punkt
    $p2_y = $h_h + Sin(($i + 120) * $pi_div_180) * $radius_y ;y Koordinate vom 2. Punkt
    $p3_x = $w_h + Cos(($i + 240) * $pi_div_180) * $radius_x ;x Koordinate vom 3. Punkt
    $p3_y = $h_h + Sin(($i + 240)* $pi_div_180) * $radius_y ;y Koordinate vom 3. Punkt
    _GDIPlus_GraphicsDrawLine($hBackbuffer, $p1_x, $p1_y, $p2_x, $p2_y, $hPen) ;verbinde p1-p2
    _GDIPlus_GraphicsDrawLine($hBackbuffer, $p2_x, $p2_y, $p3_x, $p3_y, $hPen) ;verbinde p2-p3
    _GDIPlus_GraphicsDrawLine($hBackbuffer, $p3_x, $p3_y, $p1_x, $p1_y, $hPen) ;verbinde p3-p1
    _GDIPlus_GraphicsDrawEllipse($hBackbuffer, $w_h - $radius_x / 2, $h_h - $radius_y / 2, $radius_x, $radius_y, $hPen) ;innerer Kreis
    _GDIPlus_GraphicsDrawEllipse($hBackbuffer, 0, 0, 2 * $radius_x, 2 * $radius_y, $hPen) ;äußerer Kreis
    _GDIPlus_GraphicsDrawImageRect($hGraphics, $hBitmap, 0, 0, $width, $height)
    $i += 2
    If $i = 360 Then $i = 0
    Sleep(30)
    Until False

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

    Func close()
    _GDIPlus_PenDispose($hPen)
    _GDIPlus_GraphicsDispose($hBackbuffer)
    _GDIPlus_BitmapDispose($hBitmap)
    _GDIPlus_GraphicsDispose($hGraphics)
    _GDIPlus_Shutdown()
    Exit
    EndFunc

    [/autoit]

    Ich hofffe, dass ich es erklären konnte!

    Gruß,
    UEZ

  • GDI+ Rotating Cubes

    • UEZ
    • 12. März 2010 um 13:45

    Würfel + Texturen ist jetzt fehlerfrei! Siehe Post#1


    Gruß,
    UEZ

  • GDI+ Rotating Cubes

    • UEZ
    • 10. März 2010 um 23:41

    @alle: danke für das Feedback :thumbup:

    Zitat von Andy

    Sehr nice^^, jetzt fehlen nur noch die Jungs und Mädels um die Würfelseiten mit Texturen zu bestücken..... :thumbup:

    Voilà, hier mit Texturen, aber ich stehe gerade auf dem Schlauch mit der Sortierung der Punkte auf der Z-Achse und was man anschließend tun muss, um das Ganze mit der richtigen Perspektive dargestellt zu bekommen! ?(

    siehe Post#1

    eukalyptus: das mit WinSetTrans($hwnd,"", 0xFF) hatte ich vergessen zu implementieren. Ist in der nächsten Version dabei! Danke! :thumbup:


    Gruß,
    UEZ

  • Leviathan hat Gebrtstag

    • UEZ
    • 10. März 2010 um 15:47

    Herzlichen Glückwunsch zum Geburtstag und alles Gute ^^

    Gruß,
    UEZ

    PS: auch den Anderen, die heute auch Geburtstag haben ;)

  • GDI+ Rotating Cubes

    • UEZ
    • 10. März 2010 um 14:28
    Zitat von nuts

    Tolles Skript. :thumbup:

    Ist das die maximale Rotationsgeschwindigkeit aufgrund der Autoit-Berechnung?

    Mit $mouse_sense = 150 wird die Rotationsgeschwindigkeit festgelegt! je kleiner desto schneller.

    Gruß,
    UEZ

  • GDI+ Backbuffer - aber wie?!

    • UEZ
    • 10. März 2010 um 13:57

    Oder so:

    Spoiler anzeigen
    [autoit]


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

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

    $GUI_Back_Color = 0xF0F0F0

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

    Global $x = 300, $y = 300
    Global $iSize = 15, $iPen = 2
    Global $iColor = 0xFFAA3366

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

    Opt("GUIOnEventMode", 1)
    $Width = 600
    $Height = 600
    $hDLL = DllOpen("user32.dll")
    $hGUI = GUICreate("", $Width, $Height)
    GUISetOnEvent(-3, "_Eventhandler")
    GUIRegisterMsg($WM_PAINT, "WM_PAINT")

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

    _GDIPlus_Startup()
    $hGraphic = _GDIPlus_GraphicsCreateFromHWND($hGUI) ; Graphic obj erstellen
    $hPen = _GDIPlus_PenCreate($iColor, $iPen) ; Pinsel erstellen
    $hBrush = _GDIPlus_BrushCreateSolid(0xFF000000 + $GUI_Back_Color)
    $hBitmap = _GDIPlus_BitmapCreateFromGraphics($Width, $Height, $hGraphic)
    $hBackbuffer = _GDIPlus_ImageGetGraphicsContext($hBitmap)
    ;~ _WinAPI_RedrawWindow($hGUI, 0, 0, $RDW_INTERNALPAINT) ; Fenster intern schonmal zeichnen

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

    GUISetState()

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

    WM_PAINT()

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

    $t = TimerInit()
    While 1
    If TimerDiff($t) > 10 Then
    Sleep(10)
    $t = TimerInit()
    EndIf
    _KeyHandler()
    WEnd

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

    Func WM_PAINT()
    ;~ _WinAPI_RedrawWindow($hGUI)
    _GDIPlus_GraphicsClear($hBackbuffer, 0xFF000000 + $GUI_Back_Color)
    _GDIPlus_GraphicsDrawLine($hBackbuffer, $x - $iSize, $y, $x + $iSize, $y, $hPen) ; Fadenkreuz malen
    _GDIPlus_GraphicsDrawLine($hBackbuffer, $x, $y - $iSize, $x, $y + $iSize, $hPen)
    _GDIPlus_GraphicsDrawImageRect($hGraphic, $hBitmap, 0, 0, $width, $height)
    Return $GUI_RUNDEFMSG
    EndFunc ;==>WM_PAINT

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

    Func _Eventhandler()
    Switch @GUI_CtrlId
    Case -3
    _GDIPlus_PenDispose($hPen)
    _GDIPlus_BrushDispose($hBrush)
    _GDIPlus_GraphicsDispose($hBackbuffer)
    _GDIPlus_BitmapDispose($hBitmap)
    _GDIPlus_GraphicsDispose($hGraphic)
    ;~ _WinAPI_ReleaseDC($hGUI,$hBackbuffer)
    _GDIPlus_Shutdown()
    Exit
    EndSwitch
    EndFunc ;==>_Eventhandler

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

    Func _KeyHandler()

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

    If _IsPressed(25, $hDLL) Then ; links
    $x -= 2
    If $x < 0 Then $x = 0
    WM_PAINT()
    EndIf

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

    If _IsPressed(27, $hDLL) Then ; rechts
    $x += 2
    If $x > 599 Then $x = 599
    WM_PAINT()
    EndIf

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

    If _IsPressed(26, $hDLL) Then ; oben
    $y -= 2
    If $y < 0 Then $y = 0
    WM_PAINT()
    EndIf

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

    If _IsPressed(28, $hDLL) Then; unten
    $y += 2
    If $y > 599 Then $y = 599
    WM_PAINT()
    EndIf

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

    If _IsPressed("6B", $hDLL) Then ; Plus ( NumPad )
    $iSize += 1
    WM_PAINT()
    EndIf

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

    If _IsPressed("6D", $hDLL) Then ; Minus ( NumPad )
    $iSize -= 1
    If $iSize < 1 Then $iSize = 1
    WM_PAINT()
    EndIf

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

    If _IsPressed("6A", $hDLL) Then ;*
    $iPen += 10
    ConsoleWrite(Hex($iPen, 8) & @CRLF)
    _GDIPlus_PenSetWidth($hPen, $iPen)
    WM_PAINT()
    EndIf

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

    If _IsPressed("6F", $hDLL) Then ;/
    $iPen -= 10
    If $iPen < 1 Then $iPen = 1
    ConsoleWrite(Hex($iPen, 8) & @CRLF)
    _GDIPlus_PenSetWidth($hPen, $iPen)
    WM_PAINT()
    EndIf

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

    If _IsPressed("20", $hDLL) Then
    Local $iChosen = _ChooseColor(2)
    If @error Then Return
    $iColor = 0xFF000000 + $iChosen
    _GDIPlus_PenSetColor($hPen, $iColor)
    WM_PAINT()
    EndIf
    EndFunc ;==>_KeyHandler

    [/autoit]


    Gruß,
    UEZ

  • GDI+ Rotating Cubes

    • UEZ
    • 10. März 2010 um 13:31

    Hier 4 weitere Beispiele für einen rotierenden Würfel ;)

    Danke an Malkey für den Hinweis mit den Mittelpunkten der Flächen, um nur die sichtbaren Flächen angezeigt zu bekommen!

    Der Fluchtpunkt stimmt bei dem Würfel2 und Würfel3 nicht! Ich arbeite daran!


    Würfel1 / Würfel2 mit Texturen / Würfel3 mit animierten Seiten / Würfel4 Simple:


    Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist. Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist. Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist. Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist.


    Für Rotating Cube 2 und Rotating Cube 2 - Simple.au3 sollte die Perspektive jetzt stimmen. Für die anderen Würfel suche ich nach einer Lösung, wobei ich nicht weiß, ob überhaupt mit _GDIPlus_DrawImagePoints() eine korrekte Perspektive möglich ist, da _GDIPlus_DrawImagePoints() nur ein Parallelogramm anhand von 3 Koodinaten erstellen kann. ?(


    Danke an Authenticity für die GDIp.au3, woraus die nicht Standard GDI+ Funktionen sind! :thumbup:

    Gruß,
    UEZ

    Dateien

    Cube2_4.jpg 10,09 kB – 0 Downloads Rotating Cube 2 - Simple.au3 100,34 kB – 933 Downloads Rotating Cube 2 + animated surfaces.au3 29,93 kB – 721 Downloads Cube2_1.png 22,03 kB – 0 Downloads Cube2_3.png 45,07 kB – 0 Downloads Rotating Cube 2.au3 7,78 kB – 645 Downloads Cube2_2.png 38,66 kB – 0 Downloads Rotating Cube 2 + Textures.au3 48,25 kB – 700 Downloads
  • GDI Plus

    • UEZ
    • 9. März 2010 um 21:07
    Zitat von Pinguin94

    HAt wer auch ein Beispiel zu Kugeln?^^
    Das könnte nämlich kompliziert werden zu berechnen^^

    Was ist Kugeln? Das hier: Simple_Ball_Collision_Simulation.au3?

    UEZ

  • GDI Plus

    • UEZ
    • 9. März 2010 um 20:46

    Hier noch'n Würfel Beispiel in GDI+: Rotating Qube ;)

    Gruß,
    UEZ

  • GDI+ schriftfarbe comboauswahl

    • UEZ
    • 9. März 2010 um 16:40

    So, hier der 2. Anlauf:

    Spoiler anzeigen
    [autoit]


    #cs ----------------------------------------------------------------------------

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

    AutoIt Version: 3.3.0.0
    Author: Kev

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

    Script Function:
    Template AutoIt script.

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

    #ce ----------------------------------------------------------------------------
    #cs ----------------------------------------------------------------------------

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

    AutoIt Version: 3.3.0.0
    Author: myName

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

    Script Function:
    Template AutoIt script.

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

    #ce ----------------------------------------------------------------------------

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

    ; Script Start - Add your code below here

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

    #include <GUIConstantsEx.au3>
    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <IE.au3>
    #include <Inet.au3>
    #include <String.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #Include <GuiComboBox.au3>
    #include <array.au3>
    #include <file.au3>
    #Include <GDIPlus.au3>
    #include <Color.au3>
    #include <WinAPI.au3>
    #include <ScreenCapture.au3>

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

    global $pic1, $draw = 0
    Global $hGraphic, $hBrush, $hFormat, $hFamily, $hFont, $tLayout
    global $klasse[1], $name2[1]
    global $comboname

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

    $arfile = _FileListToArray (@scriptdir &"\rg_bg\", "*.gif", 1)
    $Form1 = Guicreate("Rising Gods Signaturius",820,400)
    $shape = GUICtrlCreateInput(' ', 480, 0, 5, 400)
    GUICtrlSetBkColor(-1,"0x000000")
    Guictrlsetstate(-1,$GUI_DISABLE)
    GuictrlcreateLabel("Character Name:",30,30,120,25)
    $Name = GUICtrlCreateInput("Dein Charactername",130,25,120,25)
    $arfile = _FileListToArray (@scriptdir &"\rg_bg\", "*.gif", 1)
    GuictrlcreateLabel("Wähle deine Signatur:",265,30,120,25)
    GuictrlcreateLabel("Rising Gods Realm:",30,60,120,25)
    $Realm = GUICtrlCreateCombo("PvP",130,55,120,25,$CBS_DROPDOWNLIST)
    Guictrlsetdata(-1,"PvE")
    $Button = GUICtrlCreateButton("Fertig",130,85,120,25)
    $ButtonExit = GUICtrlCreateButton("Beenden",550,370,120,25)
    $Button1 = GUICtrlCreateButton("Überprüfung",130,112,120,25)
    $UpdateButton = GuictrlcreateButton("Update",550,345,120,25)
    $SigOK = GuictrlcreateButton("Erstellen",260,85,120,25)
    $SigEN = GuictrlcreateButton("Ändern",260,112,120,25)
    $Save = GuictrlcreateButton("Signatur speichern",180,165,140,70)
    GuiCtrlSetState($SigEN,$GUI_DISABLE)
    GuictrlcreateLabel("Character:",500,25,120,25)
    GuictrlcreateLabel("Fraktion:",500,55,120,25)
    GuictrlcreateLabel("Klasse:",500,85,120,25)
    GuictrlcreateLabel("Level:",500,115,120,25)
    GuictrlcreateLabel("Rasse:",500,145,120,25)
    GuictrlcreateLabel("Skillung:",500,175,120,25)
    GuictrlcreateLabel("Gesundheit:",500,205,120,25)
    GuictrlcreateLabel("Mana/Wut/Energie:",500,235,120,25)
    GuictrlcreateLabel("Gilde:",500,265,120,25)
    GuictrlcreateLabel("Erfolgspunkte:",500,295,120,25)
    GUICtrlCreateLabel("Programm by Anubiz - GFX by Feyth",150,379,180,90)
    Guictrlsetstate(-1,$GUI_DISABLE)
    $charklasse = GuictrlcreateLabel("",600,85,120,25)
    $charfraktion = GuictrlcreateLabel("",600,55,120,25)
    $charname = GuictrlcreateLabel("",600,25,120,25)
    $lvl = GuictrlcreateLabel("",600,115,120,25)
    $Rasse = GuictrlcreateLabel("",600,145,120,25)
    $Skill = GuictrlcreateLabel("",600,175,120,25)
    $Gesund = GuictrlcreateLabel("",600,205,120,25)
    $Mana = GuictrlcreateLabel("",600,235,120,25)
    $guild = GuictrlcreateLabel("",600,265,120,25)
    $erfolge = GuictrlcreateLabel("",600,295,120,25)
    $Pic1 = GuiCtrlCreatePic("",15,265,450,100,BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS))
    $Combo1 = Guictrlcreatecombo("",260,55,120,35,$CBS_DROPDOWNLIST)
    $Comboname = Guictrlcreatecombo("Schwarz",725,25,80,25,$CBS_DROPDOWNLIST)
    GUICtrlSetData(-1, "Rot|Grün|Blau|Gelb")
    $Combofraktion = Guictrlcreatecombo("Schwarz",725,55,80,25,$CBS_DROPDOWNLIST)
    GUICtrlSetData(-1, "Rot|Grün|Blau|Gelb")
    $Comboklasse = Guictrlcreatecombo("Schwarz",725,85,80,25,$CBS_DROPDOWNLIST)
    GUICtrlSetData(-1, "Rot|Grün|Blau|Gelb")
    $Combolvl = Guictrlcreatecombo("Schwarz",725,115,80,25,$CBS_DROPDOWNLIST)
    GUICtrlSetData(-1, "Rot|Grün|Blau|Gelb")
    $ComboRasse = Guictrlcreatecombo("Schwarz",725,145,80,25,$CBS_DROPDOWNLIST)
    GUICtrlSetData(-1, "Rot|Grün|Blau|Gelb")
    $ComboSkill = Guictrlcreatecombo("Schwarz",725,175,80,25,$CBS_DROPDOWNLIST)
    GUICtrlSetData(-1, "Rot|Grün|Blau|Gelb")
    $Combogesund = Guictrlcreatecombo("Schwarz",725,205,80,25,$CBS_DROPDOWNLIST)
    GUICtrlSetData(-1, "Rot|Grün|Blau|Gelb")
    $Combomana= Guictrlcreatecombo("Schwarz",725,235,80,25,$CBS_DROPDOWNLIST)
    GUICtrlSetData(-1, "Rot|Grün|Blau|Gelb")
    $Combogilde= Guictrlcreatecombo("Schwarz",725,265,80,25,$CBS_DROPDOWNLIST)
    GUICtrlSetData(-1, "Rot|Grün|Blau|Gelb")
    $Comboerfolge= Guictrlcreatecombo("Schwarz",725,295,80,25,$CBS_DROPDOWNLIST)
    GUICtrlSetData(-1, "Rot|Grün|Blau|Gelb")
    GuiCtrlSetState($Button1, $GUI_DISABLE)
    GUISetState(@SW_SHOW)

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

    For $i = 1 To UBound ($arfile) - 1
    _GUICtrlComboBox_AddString ($Combo1, $arfile [$i])
    Next
    _GUICtrlComboBox_SetCurSel ($Combo1, 0)
    GUICtrlSetImage ($Pic1, @scriptdir &"\rg_bg\" & $arfile [1])
    $value = GUICtrlRead ($Combo1)
    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    _gdiEnd()
    Exit
    case $button
    GuiCtrlSetState($Name, $GUI_DISABLE)
    GuiCtrlSetState($Realm, $GUI_DISABLE)
    msgbox(0,"Status", "Character wird abgerufen...")
    GuiCtrlSetState($Button1, $GUI_ENABLE)
    $source = _INetGetSource("http://www.arsenal.rising-gods.de/character-sheet.xml?r=" & GUICtrlRead($Realm) & "-Realm&n=" & GUICtrlRead($Name))
    $file = FileOpen(@ScriptDir & "\Char.txt", 0)
    $klasse = _StringBetween($source, '" class="', '" classId')
    If IsArray($klasse) Then GUICtrlSetData($charklasse, $klasse[0])
    $faction = _StringBetween($source , '" faction="', '" factionId')
    If IsArray($faction) Then GUICtrlSetData($charfraktion, $faction[0])
    $name2 = _StringBetween($source , '" name="', '" points')
    If IsArray($name2) Then GUICtrlSetData($charname, $name2[0])
    $name3 = _StringBetween($source , '" level="', '" name')
    If IsArray($name3) Then GUICtrlSetData($lvl, $name3[0])
    $name4 = _StringBetween($source , '" race="', '" raceId')
    If IsArray($name4) Then GUICtrlSetData($Rasse, $name4[0])
    $name5 = _StringBetween($source , '" prim="', '" treeOne')
    If IsArray($name5) Then GUICtrlSetData($Skill, $name5[0])
    $name6 = _StringBetween($source , '<health effective="', '"/>')
    If IsArray($name6) Then GUICtrlSetData($Gesund, $name6[0])
    $name7 = _StringBetween($source , '" effective="', '" notCasting')
    If IsArray($name7) Then GUICtrlSetData($Mana, $name7[0])
    $name8 = _StringBetween($source , '" guildName="', '" guildUrl')
    If IsArray($name8) Then GUICtrlSetData($guild, $name8[0])
    $name9 = _StringBetween($source , '" points="', '" prefix')
    If IsArray($name9) Then GUICtrlSetData($erfolge, $name9[0])
    case $ButtonExit
    _gdiEnd()
    exit
    case $UpdateButton
    msgbox(1,"Updater","Nach neuen Updates suchen?")
    sleep(1000)
    if FileExists (@ScriptDir & "\rg_bg\RG_SigU_01.gif") Then
    Msgbox(1,"Updater","Keine neuen Updates vorhanden")
    else
    InetGet("ftp://username:pass@anubiz.pytalhost.com/RG_SigU_01.gif",@scriptdir & "\rg_bg\RG_SigU_01.gif",1)
    InetGet("ftp://username:pass@anubiz.pytalhost.com/RG_SigU_02.gif",@scriptdir & "\rg_bg\RG_SigU_02.gif",1)
    sleep(1000)
    msgbox(0,"Updater","Update erfolgreich")
    Endif
    case $SigOK
    GuiCtrlSetState($Combo1,$GUI_DISABLE)
    GuiCtrlSetState($SigEN,$GUI_ENABLE)
    msgbox(0,"Signatur","Signatur erfolgreich ausgewählt")
    $draw = 1
    _gdiStart(GUICtrlGetHandle($Pic1))
    case $SigEN
    GuiCtrlSetState($Combo1,$GUI_ENABLE)
    case $save
    $pic1 = FileSaveDialog("Speichern",@ScriptDir, "JPEG(*.jpg;*.jpeg)|24-Bit-Bitmap(*.bmp)|GIF(*.gif)", 2)
    case $Button1
    ShellExecute("http://www.arsenal.rising-gods.de/character-sheet.xml?r=" & GUICtrlRead($Realm) & "-Realm&n=" & GUICtrlRead($Name))

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

    Case $Comboname
    _GDIPlus_BrushSetSolidColor($hBrush, 0xFF000000 + Combo_Get_Color($Comboname))
    _gdiText($name2[0])
    EndSwitch
    If $value <> GUICtrlRead ($Combo1) Then
    GUICtrlSetImage ($Pic1, @scriptdir &"\rg_bg\" & $arfile [_ArraySearch ($arfile, GUICtrlRead ($Combo1))])
    $value = GUICtrlRead ($Combo1)
    EndIf
    If $draw Then _gdiText($name2[0])
    WEnd

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

    Func _gdiStart($hGui)
    _GDIPlus_Startup()
    $hGraphic = _GDIPlus_GraphicsCreateFromHWND ($hGUI)
    $hBrush = _GDIPlus_BrushCreateSolid(0x7F000000)
    $hFormat = _GDIPlus_StringFormatCreate()
    $hFamily = _GDIPlus_FontFamilyCreate("Arial")
    $hFont = _GDIPlus_FontCreate($hFamily, 12, 2)
    $tLayout = _GDIPlus_RectFCreate(80, 40, 100, 20)
    EndFunc

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

    func _gdiText($sText)
    _GDIPlus_GraphicsDrawStringEx($hGraphic, $sText, $hFont, $tLayout, $hFormat, $hBrush)
    EndFunc

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

    Func _gdiEnd()
    _GDIPlus_FontDispose($hFont)
    _GDIPlus_FontFamilyDispose($hFamily)
    _GDIPlus_StringFormatDispose($hFormat)
    _GDIPlus_BrushDispose($hBrush)
    _GDIPlus_GraphicsDispose($hGraphic)
    _GDIPlus_Shutdown()
    EndFunc

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

    Func Combo_Get_Color($combo)
    Local $content
    Local $red = 0xF00000, $green = 0x00F000, $blue = 0x0000F0, $yellow = 0xD0D000, $black = 0x000000
    $content = GUICtrlRead($combo)
    Switch $content
    Case "Rot"
    Return $red
    Case "Grün"
    Return $green
    Case "Blau"
    Return $blue
    Case "Gelb"
    Return $yellow
    Case "Schwarz"
    Return $black
    EndSwitch
    EndFunc

    [/autoit]

    Gruß,
    UEZ

  • GDI+ schriftfarbe comboauswahl

    • UEZ
    • 9. März 2010 um 16:25

    Oh man, jetzt fällt der Groschen (aufgehängt an einem Fallschirm) :whistling:

    Gruß,
    UEZ

  • GDI+ schriftfarbe comboauswahl

    • UEZ
    • 9. März 2010 um 16:03

    Eigentlich brauchst du dafür kein GDI+!

    Hier die Nicht-GDI+-Version ;)

    Spoiler anzeigen
    [autoit]


    #cs ----------------------------------------------------------------------------

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

    AutoIt Version: 3.3.0.0
    Author: Kev

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

    Script Function:
    Template AutoIt script.

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

    #ce ----------------------------------------------------------------------------
    ; Script Start - Add your code below here

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

    #include <GUIConstantsEx.au3>
    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <IE.au3>
    #include <Inet.au3>
    #include <String.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #Include <GuiComboBox.au3>
    #include <array.au3>
    #include <file.au3>
    #Include <GDIPlus.au3>
    #include <Color.au3>
    #include <WinAPI.au3>
    #include <ScreenCapture.au3>

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

    global $pic1, $draw = 0
    Global $hGraphic, $hBrush, $hFormat, $hFamily, $hFont, $tLayout
    global $klasse[1], $name2[1]
    global $comboname, $source
    Global $red = 0xF00000, $green = 0x00F000, $blue = 0x0000F0, $yellow = 0xD0D000, $black = 0x000000

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

    $arfile = _FileListToArray (@scriptdir &"\rg_bg\", "*.gif", 1)
    $Form1 = Guicreate("Rising Gods Signaturius",820,400)
    $shape = GUICtrlCreateInput(' ', 480, 0, 5, 400)
    GUICtrlSetBkColor(-1,"0x000000")
    Guictrlsetstate(-1,$GUI_DISABLE)
    GuictrlcreateLabel("Character Name:",30,30,120,25)
    $Name = GUICtrlCreateInput("Dein Charactername",130,25,120,25)
    $arfile = _FileListToArray (@scriptdir &"\rg_bg\", "*.gif", 1)
    GuictrlcreateLabel("Wähle deine Signatur:",265,30,120,25)
    GuictrlcreateLabel("Rising Gods Realm:",30,60,120,25)
    $Realm = GUICtrlCreateCombo("PvP",130,55,120,25,$CBS_DROPDOWNLIST)
    Guictrlsetdata(-1,"PvE")
    $Button = GUICtrlCreateButton("Fertig",130,85,120,25)
    $ButtonExit = GUICtrlCreateButton("Beenden",550,370,120,25)
    $Button1 = GUICtrlCreateButton("Überprüfung",130,112,120,25)
    $UpdateButton = GuictrlcreateButton("Update",550,345,120,25)
    $SigOK = GuictrlcreateButton("Erstellen",260,85,120,25)
    $SigEN = GuictrlcreateButton("Ändern",260,112,120,25)
    $Save = GuictrlcreateButton("Signatur speichern",180,165,140,70)
    GuiCtrlSetState($SigEN,$GUI_DISABLE)
    GuictrlcreateLabel("Character:",500,25,120,25)
    GuictrlcreateLabel("Fraktion:",500,55,120,25)
    GuictrlcreateLabel("Klasse:",500,85,120,25)
    GuictrlcreateLabel("Level:",500,115,120,25)
    GuictrlcreateLabel("Rasse:",500,145,120,25)
    GuictrlcreateLabel("Skillung:",500,175,120,25)
    GuictrlcreateLabel("Gesundheit:",500,205,120,25)
    GuictrlcreateLabel("Mana/Wut/Energie:",500,235,120,25)
    GuictrlcreateLabel("Gilde:",500,265,120,25)
    GuictrlcreateLabel("Erfolgspunkte:",500,295,120,25)
    GUICtrlCreateLabel("Programm by Anubiz - GFX by Feyth",150,379,180,90)
    Guictrlsetstate(-1,$GUI_DISABLE)
    $charklasse = GuictrlcreateLabel("",600,85,120,25)
    $charfraktion = GuictrlcreateLabel("",600,55,120,25)
    $charname = GuictrlcreateLabel("",600,25,120,25)
    $lvl = GuictrlcreateLabel("",600,115,120,25)
    $Rasse = GuictrlcreateLabel("",600,145,120,25)
    $Skill = GuictrlcreateLabel("",600,175,120,25)
    $Gesund = GuictrlcreateLabel("",600,205,120,25)
    $Mana = GuictrlcreateLabel("",600,235,120,25)
    $guild = GuictrlcreateLabel("",600,265,120,25)
    $erfolge = GuictrlcreateLabel("",600,295,120,25)
    $Pic1 = GuiCtrlCreatePic("",15,265,450,100,BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS))
    $Combo1 = Guictrlcreatecombo("",260,55,120,35,$CBS_DROPDOWNLIST)
    $Comboname = Guictrlcreatecombo("Schwarz",725,25,80,25,$CBS_DROPDOWNLIST)
    GUICtrlSetData(-1, "Rot|Grün|Blau|Gelb")
    $Combofraktion = Guictrlcreatecombo("Schwarz",725,55,80,25,$CBS_DROPDOWNLIST)
    GUICtrlSetData(-1, "Rot|Grün|Blau|Gelb")
    $Comboklasse = Guictrlcreatecombo("Schwarz",725,85,80,25,$CBS_DROPDOWNLIST)
    GUICtrlSetData(-1, "Rot|Grün|Blau|Gelb")
    $Combolvl = Guictrlcreatecombo("Schwarz",725,115,80,25,$CBS_DROPDOWNLIST)
    GUICtrlSetData(-1, "Rot|Grün|Blau|Gelb")
    $ComboRasse = Guictrlcreatecombo("Schwarz",725,145,80,25,$CBS_DROPDOWNLIST)
    GUICtrlSetData(-1, "Rot|Grün|Blau|Gelb")
    $ComboSkill = Guictrlcreatecombo("Schwarz",725,175,80,25,$CBS_DROPDOWNLIST)
    GUICtrlSetData(-1, "Rot|Grün|Blau|Gelb")
    $Combogesund = Guictrlcreatecombo("Schwarz",725,205,80,25,$CBS_DROPDOWNLIST)
    GUICtrlSetData(-1, "Rot|Grün|Blau|Gelb")
    $Combomana= Guictrlcreatecombo("Schwarz",725,235,80,25,$CBS_DROPDOWNLIST)
    GUICtrlSetData(-1, "Rot|Grün|Blau|Gelb")
    $Combogilde= Guictrlcreatecombo("Schwarz",725,265,80,25,$CBS_DROPDOWNLIST)
    GUICtrlSetData(-1, "Rot|Grün|Blau|Gelb")
    $Comboerfolge= Guictrlcreatecombo("Schwarz",725,295,80,25,$CBS_DROPDOWNLIST)
    GUICtrlSetData(-1, "Rot|Grün|Blau|Gelb")
    GuiCtrlSetState($Button1, $GUI_DISABLE)
    GUISetState(@SW_SHOW)

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

    For $i = 1 To UBound ($arfile) - 1
    _GUICtrlComboBox_AddString ($Combo1, $arfile [$i])
    Next
    _GUICtrlComboBox_SetCurSel ($Combo1, 0)
    GUICtrlSetImage ($Pic1, @scriptdir & "\rg_bg\" & $arfile [1])
    $value = GUICtrlRead ($Combo1)
    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    case $button
    GuiCtrlSetState($Name, $GUI_DISABLE)
    GuiCtrlSetState($Realm, $GUI_DISABLE)
    msgbox(0,"Status", "Character wird abgerufen...")
    GuiCtrlSetState($Button1, $GUI_ENABLE)
    $source = _INetGetSource("http://www.arsenal.rising-gods.de/character-sheet.xml?r=" & GUICtrlRead($Realm) & "-Realm&n=" & GUICtrlRead($Name))
    $klasse = _StringBetween($source, '" class="', '" classId')
    If IsArray($klasse) Then GUICtrlSetData($charklasse, $klasse[0])
    $faction = _StringBetween($source , '" faction="', '" factionId')
    If IsArray($faction) Then GUICtrlSetData($charfraktion, $faction[0])
    $name2 = _StringBetween($source , '" name="', '" points')
    If IsArray($name2) Then GUICtrlSetData($charname, $name2[0])
    $name3 = _StringBetween($source , '" level="', '" name')
    If IsArray($name3) Then GUICtrlSetData($lvl, $name3[0])
    $name4 = _StringBetween($source , '" race="', '" raceId')
    If IsArray($name4) Then GUICtrlSetData($Rasse, $name4[0])
    $name5 = _StringBetween($source , '" prim="', '" treeOne')
    If IsArray($name5) Then GUICtrlSetData($Skill, $name5[0])
    $name6 = _StringBetween($source , '<health effective="', '"/>')
    If IsArray($name6) Then GUICtrlSetData($Gesund, $name6[0])
    $name7 = _StringBetween($source , '" effective="', '" notCasting')
    If IsArray($name7) Then GUICtrlSetData($Mana, $name7[0])
    $name8 = _StringBetween($source , '" guildName="', '" guildUrl')
    If IsArray($name8) Then GUICtrlSetData($guild, $name8[0])
    $name9 = _StringBetween($source , '" points="', '" prefix')
    If IsArray($name9) Then GUICtrlSetData($erfolge, $name9[0])
    case $ButtonExit
    exit
    case $UpdateButton
    msgbox(1,"Updater","Nach neuen Updates suchen?")
    sleep(1000)
    if FileExists (@ScriptDir & "\rg_bg\RG_SigU_01.gif") Then
    Msgbox(1,"Updater","Keine neuen Updates vorhanden")
    else
    InetGet("ftp://username:pass@anubiz.pytalhost.com/RG_SigU_01.gif",@scriptdir & "\rg_bg\RG_SigU_01.gif",1)
    InetGet("ftp://username:pass@anubiz.pytalhost.com/RG_SigU_02.gif",@scriptdir & "\rg_bg\RG_SigU_02.gif",1)
    sleep(1000)
    msgbox(0,"Updater","Update erfolgreich")
    Endif
    case $SigOK
    GuiCtrlSetState($Combo1,$GUI_DISABLE)
    GuiCtrlSetState($SigEN,$GUI_ENABLE)
    msgbox(0,"Signatur","Signatur erfolgreich ausgewählt")
    $draw = 1
    case $SigEN
    GuiCtrlSetState($Combo1,$GUI_ENABLE)
    case $save
    $pic1 = FileSaveDialog("Speichern",@ScriptDir, "JPEG(*.jpg;*.jpeg)|24-Bit-Bitmap(*.bmp)|GIF(*.gif)", 2)
    case $Button1
    ShellExecute("http://www.arsenal.rising-gods.de/character-sheet.xml?r=" & GUICtrlRead($Realm) & "-Realm&n=" & GUICtrlRead($Name))

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

    Case $Comboname
    GUICtrlSetColor($charname, Combo_Set_Color($Comboname))
    Case $Combofraktion
    GUICtrlSetColor($charfraktion, Combo_Set_Color($Combofraktion))
    Case $Comboklasse
    GUICtrlSetColor($charklasse, Combo_Set_Color($Comboklasse))
    Case $Combolvl
    GUICtrlSetColor($lvl, Combo_Set_Color($Combolvl))
    Case $ComboRasse
    GUICtrlSetColor($Rasse, Combo_Set_Color($ComboRasse))
    Case $ComboSkill
    GUICtrlSetColor($Skill, Combo_Set_Color($ComboSkill))
    Case $Combogesund
    GUICtrlSetColor($Gesund, Combo_Set_Color($Combogesund))
    Case $Combomana
    GUICtrlSetColor($Mana, Combo_Set_Color($Combomana))
    Case $Combogilde
    GUICtrlSetColor($guild, Combo_Set_Color($Combogilde))
    Case $Comboerfolge
    GUICtrlSetColor($erfolge, Combo_Set_Color($Comboerfolge))
    EndSwitch
    If $value <> GUICtrlRead ($Combo1) Then
    GUICtrlSetImage ($Pic1, @scriptdir &"\rg_bg\" & $arfile [_ArraySearch ($arfile, GUICtrlRead ($Combo1))])
    $value = GUICtrlRead ($Combo1)
    EndIf
    WEnd

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

    Func Combo_Set_Color($combo)
    Local $content
    $content = GUICtrlRead($combo)
    Switch $content
    Case "Rot"
    Return $red
    Case "Grün"
    Return $green
    Case "Blau"
    Return $blue
    Case "Gelb"
    Return $yellow
    Case "Schwarz"
    Return $black
    EndSwitch
    EndFunc

    [/autoit]


    Gruß,
    UEZ

  • GDI+ schriftfarbe comboauswahl

    • UEZ
    • 9. März 2010 um 14:58

    Ich verstehe nicht, wo genau was stehen soll!

    Dein Proggy sieht bei mir so aus, da du die Grafiken nicht hinzugefügt hast:

    Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist.

    Wenn du es besser beschreibst, kann ich dir vielleicht helfen ;)

    Gruß,
    UEZ

    Dateien

    Screenshot.png 8,53 kB – 0 Downloads
  • GDI+ schriftfarbe comboauswahl

    • UEZ
    • 9. März 2010 um 14:32

    Wenn du bereits mit z.B. _GDIPlus_BrushCreateSoli(0xFF00FF00) ein Pinsel erstellt hast, dann kann du die Farbe mit _GDIPlus_BrushSetSolidColor($hBrush,0xFFFF0000) ändern.

    Gruß,
    UEZ

  • GDI+: Fussball Chronograph v1.4 Build 2010-03-09

    • UEZ
    • 9. März 2010 um 00:14
    Zitat von SEuBo

    Hab sogar noch was:
    Öffne mal das About Fenster, und klick dann einfach ins "Hauptfenster" zurück. da fehlt n ganzes stück in der Mitte.
    Noch lustiger ist allerdings, wenn man das About Fenster öffnet, und dann per [X] auf dem Hauptfenster das About Fenster schließt. Dann kann man das GUI sogar noch bewegen, ohne das es neu gezeichnet wird.

    Sollte jetzt behoben sein! Vielen Dank!

    Gruß,
    UEZ

  • GDI+: Fussball Chronograph v1.4 Build 2010-03-09

    • UEZ
    • 8. März 2010 um 13:40
    Zitat von SEuBo

    Hallo UEZ,

    Wenn das About Fenster offen ist, hat das Haupfenster auch keinen redraw mehr. ist das gewollt?
    Ansonsten - coole sache!

    Noch ein Bug: doppelter Aufruf von GUIRegisterMsg($WM_PAINT, "")!

    Sollte jetzt gefixt sein!

    Danke SEuBO!

    Gruß,
    UEZ

  • GDI+: Fussball Chronograph v1.4 Build 2010-03-09

    • UEZ
    • 8. März 2010 um 12:22
    Zitat von Xenobiologist

    Schick schick, vielleicht motiviert mich das, um auch mal was mit GDI zu machen :D
    Vielleicht gibt es ja eine Hilfe von dir wenn ich sie brauche.

    Wenn ich helfen kann, gerne! ;)

    Gruß,
    UEZ

  • GDI+: Fussball Chronograph v1.4 Build 2010-03-09

    • UEZ
    • 8. März 2010 um 11:20
    Zitat von m-obi

    Von mir bekommste auch einen Strauß. Aber was ist mit dem About Fenster, siehe Anhang. Ich hab es mal kurz ein wenig aus dem Bildschirmbereich gezogen und zurück und schwups sieht es so aus.

    Danke für den Hinweis! Habe jetzt auch ein Redraw im About Fenster eingebaut!

    Gruß,
    UEZ

  • GDI+ gezeichnetes png wird bei WM_PAINT kantig?!

    • UEZ
    • 7. März 2010 um 23:38

    Probiere das mal:

    Spoiler anzeigen
    [autoit]


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

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

    $w = 470
    $h = 260
    $hGUI = GUICreate("DescribeIt Installer", $w, $h, -1, -1)
    $GUI_Back_Color = 0xF0F0F0
    GUISetBkColor($GUI_Back_Color)
    _GDIPlus_Startup()
    $hImage = _GDIPlus_ImageLoadFromFile(@ScriptDir & "\describeit.png")
    $iX = _GDIPlus_ImageGetWidth($hImage)
    $iY = _GDIPlus_ImageGetHeight($hImage) - 4
    $hGraphic = _GDIPlus_GraphicsCreateFromHWND($hGUI)
    $hBrush = _GDIPlus_BrushCreateSolid(0xFF000000 + $GUI_Back_Color)

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

    $hBitmap = _GDIPlus_BitmapCreateFromGraphics($w, $h, $hGraphic)
    $hBackbuffer = _GDIPlus_ImageGetGraphicsContext($hBitmap)

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

    $idDestination = GUICtrlCreateGroup("Destination path", 16, 96, 433, 49)
    $idPath = GUICtrlCreateInput("", 24, 112, 321, 21)
    $id_browse = GUICtrlCreateButton("Browse...", 352, 112, 89, 25, $WS_GROUP)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $idText = GUICtrlCreateLabel( _
    "Setup will now install DescribeIt on your computer. Please your installation directory below." & @CRLF & _
    "If the selected directory does not exist, it will be created.", 16, 152, 427, 50)
    $idInstall = GUICtrlCreateButton("Start Installation", 304, 216, 145, 33, $WS_GROUP)
    $idExit = GUICtrlCreateButton("Exit Installation", 16, 216, 137, 33, $WS_GROUP)

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

    GUIRegisterMsg($WM_PAINT, "MY_WM_PAINT")
    _WinAPI_RedrawWindow($hGui, 0, 0, $RDW_INTERNALPAINT)
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    ; Clean up resources
    _GDIPlus_GraphicsDispose($hGraphic)
    _GDIPlus_BitmapDispose($hBitmap)
    _GDIPlus_GraphicsDispose($hBackbuffer)
    _GDIPlus_ImageDispose($hImage)
    _GDIPlus_BrushDispose($hBrush)
    _GDIPlus_Shutdown()
    Exit

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

    EndSwitch
    WEnd

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

    ; Draw PNG image
    Func MY_WM_PAINT($hWnd, $Msg, $wParam, $lParam)
    _WinAPI_RedrawWindow($hGUI, 0, 0, $RDW_UPDATENOW)
    _GDIPlus_GraphicsFillRect($hBackbuffer, 0, 0, 470, $iY, $hBrush)
    _GDIPlus_GraphicsDrawImage($hBackbuffer, $hImage, 10, -40)
    _GDIPlus_GraphicsDrawImageRect($hGraphic, $hBitmap, 0, 0, $w, $h)
    _WinAPI_RedrawWindow($hGUI, 0, 0, $RDW_VALIDATE)
    Return $GUI_RUNDEFMSG
    EndFunc ;==>MY_WM_PAINT

    [/autoit]

    Gruß,
    UEZ

  • Apfelmaennchen in FASM-Assembler Update incl. FLUG!

    • UEZ
    • 7. März 2010 um 17:05
    Zitat von Andy

    habe mal etwas gestöbert, entweder hängt es an den Pointern, denn in 64Bit-Windows sind diese immer 64Bit lang, oder ggf auch daran.(falsche dll?!)
    geht das?

    [autoit]

    $tCodeBuffer = DllStructCreate("byte[20]") ;Speicher für den assemblercode belegen
    DllStructSetData($tCodeBuffer, 1, "0xC7C007000000C3")
    $ret = DllCall("user32.dll", "int64", "CallWindowProcW", "int64", DllStructGetPtr($tCodeBuffer), "int64", 0, "int64", 0, "int64", 0, "int64", 0);bytecode aufrufen, rückgabe in a[0]
    msgbox(0,"Returncode",$ret[0])

    [/autoit]

    ggf sollte man mal jemanden fragen, der sich damit auskennt :o)

    Nö, geht leider auch nicht! Unter Win7 x64 geht einiges mehr nicht, wenn es als x32 ausgeführt wird, z.B. stürzt es ab, wenn man das Fentser vergrößert! :(

    DIe Farben sehen jetzt richtig "schön" aus! :thumbup:

    Gruß,
    UEZ

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™