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. syne

Beiträge von syne

  • Graphenzeichner

    • syne
    • 29. Dezember 2010 um 15:07

    erstens: ups :D

    zweitens: jetzt mit Standard-includes, s. erster Post

  • Graphenzeichner

    • syne
    • 28. Dezember 2010 um 19:08

    Hi :P

    hier kommt ein Tool von mir, um sich einen oder mehrere Funktionsgraphen schnell und einfach zeichnen zu lassen. Einfach die Funktionsvorschrift (z.B. x² oder 4x+3) eingeben und auf "plot" klicken. Danch kann man den Graph verschieben und zoomen, um bestimmte Stellen genauer zu betrachten.

    Um den Zoom zu verbessern, würde ich die Graphen gerne auf GDIPlus-Pfaden aufbauen, allerdings habe ich nur _GDIPlus_PathWarp gefunden, um den Pfad selbst zu verändern, die Methode hat jedoch auch nach langem Rumprobieren nicht funktioniert.. Wenn da jemand mal ein funktionierendes Beispiel posten könnte, würde ich mich freuen :)

    Gruß syne

    features


    Einheit Zentimeter, nicht Pixel
    Verschieben des Koordinatensystems,
    zoom durch Scrollen oder Feld aufspannen mit der rechten Maustaste,
    verschiedene Farben für die Graphen

    Code
    [autoit]


    #include <WindowsConstants.au3>
    #include <GUIConstants.au3>
    #include <WinAPI.au3>
    #include <Array.au3>
    #include <GDIPlus.au3>
    #include <Misc.au3>

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

    Global Const $pi = 4*ATan(1), $2rad = $pi/180, $e = 2.718281828
    Global Const $struct = "ptr bmp;ptr grafx"
    Global Const $dpcm = _GetDPCm()

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

    Global $width = 650, $height = 500
    Global $drawW = $width-20, $drawH = $height-20-29-20-10
    Global $zoom = 1, $color = 0x000000
    Global $var = "x"

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

    Global $origin[2] = [$drawW/2, $drawH/2]
    Global $graphs[11] = [0]
    Global $start[3] = [0, 0, False]

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

    Global $GUI = GUICreate("Graphenzeichner", $width, $height, -1, -1)
    GUISetBkColor(0xFFFFFF)
    GUIRegisterMsg($WM_PAINT, "_paint")
    GUIRegisterMsg($WM_LBUTTONDOWN, "_LButtonDown")
    GUIRegisterMsg($WM_RBUTTONDOWN, "_RButtonDown")
    GUIRegisterMsg($WM_RBUTTONUP, "_RButtonUp")
    GUIRegisterMsg($WM_MOUSEWHEEL, "_mousewheel")

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

    $p = -20
    Global $beg = GUICtrlCreateLabel("f(" & $var & ") = ", 38+$p, $height-20-29+3, 59, 29)
    GUICtrlSetFont(-1, 15)

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

    Global $input = GUICtrlCreateInput("3*e^(-0.5*x²)", 97+$p, $height-20-29, 400, 29)
    GUICtrlSetFont(-1, 15)

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

    Global $plot = GUICtrlCreateButton("plot", 507+$p, $height-20-29, 100, 29)
    GUICtrlSetFont(-1, 14)

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

    Global $popup = GUICtrlCreateLabel("", $width-45, $height-49, 30, 30, $WS_BORDER)
    GUICtrlSetBkColor($popup, 0x000000)

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

    Dim $accKeys[1][2] = [["{ENTER}", $plot]]
    GUISetAccelerators($accKeys)

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

    Global $GUI2 = GUICreate("", 115, 115, $width-115-5-2, $height-115-5-2, $WS_POPUPWINDOW, BitOR($WS_EX_TOOLWINDOW, $WS_EX_MDICHILD), $GUI)
    GUISetBkColor(0xFFFFFF, $GUI2)

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

    Global $lbls[6][2] = [[0, 0x000000], [0, 0x1207B4], [0, 0x8F11B9], [0, 0xFF0000], [0, 0x12B407], [0, 0x12C0BC]]

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

    For $i = 0 To UBound($lbls)-1
    $lbls[$i][0] = GUICtrlCreateLabel("" , 6+Mod($i, 3)*37, 6+Floor($i/3)*37, 30, 30, $WS_BORDER)
    GUICtrlSetBkColor($lbls[$i][0], $lbls[$i][1])
    Next

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

    Global $choose = GUICtrlCreateLabel("Choose color", 6, 90, 80, 20)
    GUICtrlSetColor($choose, 0x0000FF)
    GUICtrlSetFont($choose, 10, 400, 4, "Arial")
    GUICtrlSetCursor($choose, 0)

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

    _GDIPlus_Startup()

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

    Global $grafx = _GDIPlus_GraphicsCreateFromHWND($GUI)
    Global $bmp = _GDIPlus_BitmapCreateFromGraphics($drawW, $drawH, $grafx)
    Global $backbuffer = _GDIPlus_ImageGetGraphicsContext($bmp)
    _GDIPlus_GraphicsSetSmoothingMode($backbuffer, 2)

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

    _drawAll()

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

    GUISetState(@SW_SHOW, $GUI)

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

    While 1
    $msg = GUIGetMsg()
    Switch $msg
    Case $GUI_EVENT_CLOSE
    For $i = 1 To $graphs[0]
    _GDIPlus_GraphicsDispose(DllStructGetData($graphs[$i], "grafx"))
    _GDIPlus_ImageDispose(DllStructGetData($graphs[$i], "bmp"))
    $graphs[$i] = 0
    Next
    _GDIPlus_GraphicsDispose($backbuffer)
    _GDIPlus_ImageDispose($bmp)
    _GDIPlus_GraphicsDispose($grafx)
    _GDIPlus_Shutdown()
    Exit
    Case $plot
    If $graphs[0] < 10 Then
    $fct = GUICtrlRead($input)
    $fct = _makeExecutable($fct)
    _plotGraph($fct, $backbuffer, $color)
    _GDIPlus_GraphicsDrawImageRect($grafx, $bmp, 10, 10, $drawW, $drawH)
    Else
    MsgBox(48, "Graphenzeichner", "Maximale Anzahl an Graphen erreicht.")
    EndIf
    Case $popup
    GUISetState(@SW_SHOW, $GUI2)
    Case $lbls[0][0] To $lbls[5][0]
    For $i = 0 To UBound($lbls, 1)-1
    If $msg = $lbls[$i][0] Then
    $color = $lbls[$i][1]
    GUICtrlSetBkColor($popup, "0x" & Hex($lbls[$i][1], 6))
    GUISetState(@SW_HIDE, $GUI2)
    EndIf
    Next
    Case $choose
    $tmp = _ChooseColor(2, 0x000000, 0, $GUI)
    If $tmp <> -1 Then
    $color = $tmp
    GUICtrlSetBkColor($popup, $color)
    GUISetState(@SW_HIDE, $GUI2)
    EndIf
    EndSwitch
    Sleep(50)
    WEnd

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

    Func _drawCoordSys($graphics)
    Local $pen = _GDIPlus_PenCreate()
    Local $cap = _GDIPlus_ArrowCapCreate(3, 3)
    _GDIPlus_PenSetCustomEndCap($pen, $cap)

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

    _GDIPlus_GraphicsClear($graphics, 0xFFEAEAEA)
    _GDIPlus_GraphicsDrawRect($graphics, 0, 0, $drawW-1, $drawH-1)
    _GDIPlus_GraphicsDrawLine($graphics, $origin[0], $drawH, $origin[0], 0, $pen)
    _GDIPlus_GraphicsDrawLine($graphics, 0, $origin[1], $drawW, $origin[1], $pen)
    For $i = $dpcm*$zoom To $drawW Step $dpcm*$zoom
    _GDIPlus_GraphicsDrawLine($graphics, $origin[0]+$i, $origin[1]-2, $origin[0]+$i, $origin[1]+2)
    _GDIPlus_GraphicsDrawLine($graphics, $origin[0]-$i, $origin[1]-2, $origin[0]-$i, $origin[1]+2)
    _GDIPlus_GraphicsDrawLine($graphics, $origin[0]-2, $origin[1]+$i, $origin[0]+2, $origin[1]+$i)
    _GDIPlus_GraphicsDrawLine($graphics, $origin[0]-2, $origin[1]-$i, $origin[0]+2, $origin[1]-$i)
    Next

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

    _GDIPlus_ArrowCapDispose($cap)
    _GDIPlus_PenDispose($pen)
    EndFunc

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

    Func _makeExecutable($fct)
    $fct = StringReplace($fct, "e", $e)
    $fct = StringReplace($fct, "pi", $pi)
    $fct = StringReplace($fct, "²", "^2")
    $fct = StringReplace($fct, "³", "^3")
    $fct = StringRegExpReplace($fct, "([x\d)])([x(])" , "$1*$2")
    $fct = StringReplace($fct, $var, "$x")
    Return $fct
    EndFunc

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

    Func _plotGraph($fct, $graphics, $col)
    Local $tBmp = _GDIPlus_BitmapCreateFromGraphics(2*$drawW, 2*$drawH, $graphics)
    Local $bb = _GDIPlus_ImageGetGraphicsContext($tBmp)
    _GDIPlus_GraphicsSetSmoothingMode($bb, 2)
    Local $pen = _GDIPlus_PenCreate("0xFF" & Hex($col, 6))
    Local $yO, $y, $x = (-$drawW-1)/$dpcm
    $yO = -1*Execute($fct)*$dpcm

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

    If $yO = "" Then
    MsgBox(48, "Graphenzeichner", "Die eingegebene Funktion konnte nicht berechnet werden.")
    _GDIPlus_PenDispose($pen)
    _GDIPlus_GraphicsDispose($bb)
    _GDIPlus_ImageDispose($tBmp)
    Return
    EndIf

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

    For $i = -$drawW To $drawW
    $x = $i / $dpcm
    $y = -1*Execute($fct)*$dpcm
    _GDIPlus_GraphicsDrawLine($bb, $i+$drawW-1, $yO+$drawH, $i+$drawW, $y+$drawH, $pen)
    $yO = $y
    Next
    _GDIPlus_GraphicsDrawImageRect($graphics, $tBmp, $origin[0]-$drawW*$zoom, $origin[1]-$drawH*$zoom, $drawW*2*$zoom, $drawH*2*$zoom)

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

    $graphs[0] += 1
    Local $tmp = DllStructCreate($struct)
    DllStructSetData($tmp, "bmp", $tBmp)
    DllStructSetData($tmp, "grafx", $bb)
    $graphs[$graphs[0]] = $tmp

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

    _GDIPlus_PenDispose($pen)
    EndFunc

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

    Func _drawAll($out = True)
    _drawCoordSys($backbuffer)
    For $i = 1 To $graphs[0]
    _GDIPlus_GraphicsDrawImageRect($backbuffer, DllStructGetData($graphs[$i], "bmp"), $origin[0]-$drawW*$zoom, $origin[1]-$drawH*$zoom, $drawW*2*$zoom, $drawH*2*$zoom)
    Next
    _GDIPlus_GraphicsDrawString($backbuffer, "zoom: " & $zoom, 3, 3, "Calibri", 10)
    If $out Then _GDIPlus_GraphicsDrawImageRect($grafx, $bmp, 10, 10, $drawW, $drawH)
    EndFunc

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

    Func _paint($hWnd, $msg, $wParam, $lParam)
    _GDIPlus_GraphicsDrawImageRect($grafx, $bmp, 10, 10, $drawW, $drawH)
    Return $GUI_RUNDEFMSG
    EndFunc

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

    Func _LButtonDown($hWnd, $msg, $wParam, $lParam)
    GUISetState(@SW_HIDE, $GUI2)
    Local $inf = GUIGetCursorInfo($GUI)
    Local $oInf = $inf
    If Not IsArray($inf) Then Return $GUI_RUNDEFMSG

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

    If _PointInRect($inf[0], $inf[1], 10, 10, $drawW, $drawH) Then
    While $inf[2]
    If _PointInRect($origin[0]-($oInf[0]-$inf[0]), $origin[1]-($oInf[1]-$inf[1]), 0, 0, $drawW, $drawH) Then
    $origin[0] -= $oInf[0]-$inf[0]
    $origin[1] -= $oInf[1]-$inf[1]
    _drawAll()
    EndIf
    $oInf = $inf
    $inf = GUIGetCursorInfo($GUI)
    WEnd
    EndIf
    EndFunc

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

    Func _RButtonDown($hWnd, $msg, $wParam, $lParam)
    Local $inf = GUIGetCursorInfo($GUI)
    If Not IsArray($inf) Then Return $GUI_RUNDEFMSG

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

    If _PointInRect($inf[0], $inf[1], 10, 10, $drawW, $drawH) Then
    While $inf[3]
    If $start[2] Then
    _drawAll(False)
    _GDIPlus_GraphicsDrawRect($backbuffer, $start[0]-10, $start[1]-10, $inf[0]-$start[0], $inf[1]-$start[1])
    _GDIPlus_GraphicsDrawImageRect($grafx, $bmp, 10, 10, $drawW, $drawH)
    Else
    $start[0] = $inf[0]
    $start[1] = $inf[1]
    $start[2] = True
    EndIf
    $inf = GUIGetCursorInfo($GUI)
    WEnd
    EndIf
    EndFunc

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

    Func _RButtonUp($hWnd, $msg, $wParam, $lParam)
    $inf = GUIGetCursorInfo($GUI)
    If Not IsArray($inf) Then Return $GUI_RUNDEFMSG

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

    $start[2] = False

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

    Local $w = $inf[0]-$start[0], $h = $inf[1]-$start[1]
    Do
    $w += 2
    $h += 2
    Until ($w >= $drawW Or $h >= $drawH)

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

    $zoom = Round(Min3($w/($inf[0]-$start[0]), $h/($inf[1]-$start[1]), 3), 1)

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

    $origin[0] += $origin[0]-($start[0]+($inf[0]-$start[0])/2)
    $origin[1] += $origin[1]-($start[1]+($inf[1]-$start[1])/2)

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

    _drawAll()
    EndFunc

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

    Func _mousewheel($hWnd, $msg, $wParam, $lParam)
    Local $inf = GUIGetCursorInfo($GUI)
    If Not IsArray($inf) Then Return $GUI_RUNDEFMSG

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

    Local $dir = BitAND($wParam, 0x800000)-1
    $dir = -Abs($dir)/$dir

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

    Switch True
    Case _PointInRect($inf[0], $inf[1], 10, $height-20-29+3, 59, 29)
    $var = Asc($var) - 97 + $dir
    $var = Iif($var < 0, 25, Mod($var, 26)) + 97
    $var = Chr($var)

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

    GUICtrlSetData($beg, "f(" & $var & ") = ")
    Case _PointInRect($inf[0], $inf[1], 10, 10, $drawW, $drawH)
    $zoom += 0.1*$dir
    $zoom = Round(Iif($zoom < 0.5, 0.5, Iif($zoom > 3, 3, $zoom)), 1)
    _drawAll()
    EndSwitch
    EndFunc

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

    Func _PointInRect($xPt, $yPt, $xTL, $yTL, $w, $h)
    Return ($xPt >= $xTL And $xPt <= $xTL+$w And $yPt >= $yTL And $yPt <= $yTL+$h)
    EndFunc

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

    Func _GetDPCm()
    Local $hDC = DllCall("user32.dll", "long", "GetDC", "long", 0)
    Local $aRet = DllCall("gdi32.dll", "long", "GetDeviceCaps", "long", $hDC[0], "long", 90)
    Local $hDC = DllCall("user32.dll", "long", "ReleaseDC", "long", 0, "long", $hDC)
    Return $aRet[0]/2.54
    EndFunc

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

    Func Iif($t, $v1, $v2)
    If $t Then Return $v1
    Return $v2
    EndFunc

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

    Func Min($v1, $v2)
    If $v1 < $v2 Then Return $v1
    Return $v2
    EndFunc

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

    Func Min3($v1, $v2, $v3)
    Return Min($v1, Min($v2, $v3))
    EndFunc

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

    Func Max($v1, $v2)
    If $v1 > $v2 Then Return $v1
    Return $v2
    EndFunc

    [/autoit]
  • [Spiel] DropOff2

    • syne
    • 12. Dezember 2010 um 15:26

    Richtig coole Sache! :)

    Wie wärs mit Powerups oder so was ähnlichem? :P
    Slowmo, speedup, Extraleben, usw. :)

    Gruß Syne

  • transparente Pixel eines .png finden

    • syne
    • 4. Dezember 2010 um 13:23
    Zitat von BadBunny

    Das liegt daran, das der Hintergrund deiner PNG weiß war, deshalb 0xFFFFFF.
    Ich wüsste nur eine, SEHR mühselige Idee, um soetwas zu machen... Vllt das Bild vor unterschiedlichen Hintergründen wechseln und gucken welche Pixel anders sind ^^
    Aber ich denke mal das es einfacher geht.


    Ist auch ne gute Idee :) ,aber es geht wirklich einfacher :P
    Mit dem zusätzlichen Parameter von eukalyptus werden auch die alpha-Werte mit ausgegeben.
    Merke: Nächstes Mal die Hilfe einfach bis zum Ende lesen :rolleyes::D

    Gruß und Danke
    syne

  • transparente Pixel eines .png finden

    • syne
    • 4. Dezember 2010 um 01:44

    Hallo!

    Gibt es einen Weg um mit GDI+ (oder irgendwas anderem) alle transparenten Pixel eines .png-Bilds zu finden und aufzulisten?
    Und vielleicht noch wichtig: Geschwindigkeit spielt keine Rolle.

    Bei meinem bisherigen Code werden transparente Pixel als 0xFFFFFFFF ausgegeben.. :/

    Spoiler anzeigen
    [autoit]


    _GDIPlus_Startup()

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

    Global $bmp = _GDIPlus_ImageLoadFromFile("BildMitTransparenz.png")
    Global $width = _GDIPlus_ImageGetWidth($bmp)
    Global $height = _GDIPlus_ImageGetHeight($bmp)

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

    Local $lock = _GDIPlus_BitmapLockBits($bmp, 0, 0, $width, $height)
    Local $stride = DllStructGetData($lock, "Stride")
    Local $scan0 = DllStructGetData($lock, "Scan0")

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

    For $r = 0 To $width-1
    For $c = 0 To $height-1
    $px = DllStructCreate("dword", $scan0 + ($r * $stride) + ($c * 4))
    $col = DllStructGetData($px, 1)
    ConsoleWrite("0x" & Hex($col) & @CRLF)
    Next
    Next

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

    _GDIPlus_BitmapUnLockBits($bmp, $lock)

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

    _GDIPlus_ImageDispose($bmp)
    _GDIPlus_Shutdown()

    [/autoit]

    Danke schon mal und Gruß syne

  • GDIPlus MeasureString

    • syne
    • 8. Juli 2010 um 00:09

    yxyx: Richtig, das Ganze läuft über nen Buffer, allerdings bleibt der Wert auch gleich, wenn ich ein anderes Graphicsobjekt nehme.

    Komisch, der TextMeter gibt mir die richtige Größe für den Text aus..

  • GDIPlus MeasureString

    • syne
    • 7. Juli 2010 um 15:00

    Genau da liegt ja das Problem! :P
    Wenn "Ich bin ein string" länger wird und breiter als die GUI ist, steht im Struct trotzdem nur ungefähr die Breite der GUI, obwohl der String offensichtlich darüber rausgeht.. :O

  • GDIPlus MeasureString

    • syne
    • 7. Juli 2010 um 14:33

    Hallo!

    Ich würde gerne mit der Funktion _GDIPlus_GraphicsMeasureString die Breite eines Strings in Pixeln rausfinden, allerdings überschreitet der Rückgabewert nie die Breite des Graphics-Objekt im ersten Parameter der Funktion.
    Gibt es eine Möglichkeit, trotzdem die "wirkliche", ganze Breite rauszufinden?

    Gruß Syne

  • Audio Slide Beta 0.7b

    • syne
    • 6. Juli 2010 um 23:29

    Bei mir klappts seit dem dritten Starten nicht mehr.
    Sobald ich jetzt den FileOpenDialog schließe hängt es sich auf und zeichnet auch nicht mehr.

  • [beendet] µitLight Juli '10

    • syne
    • 4. Juli 2010 um 12:27

    Jap jetzt weiß ich was das ist :)
    Danke euch 2!

  • [beendet] µitLight Juli '10

    • syne
    • 4. Juli 2010 um 12:14

    Das Thema hört sich gut an, allerdings ist mir noch unklar was ein Index sein soll. Sowas wie die meistgesuchten Begriffe oder wie? ;)

  • [Frage] HTML/CSS als Design für GUI

    • syne
    • 14. Juni 2010 um 20:58

    Hey!

    als relativ unschöne Lösung könntest du zum Beispiel die onClick-Events benutzen und per Javascript ein Schlüsselwort in einen unsichtbaren <div> schreiben und dessen Inhalt ständig mit AutoIT auf Änderung überprüfen und je nach SChlüsselwort eine Funktion ausführen.

    Gruß syne

  • UDF ohne "richtig Include" nutzen

    • syne
    • 18. März 2010 um 18:33

    Vielleicht kannst du was mit Execute machen?
    Also die Datei der Funktion auslesen, dann mit Execute() ausführen.

  • Ab wann braucht Windows Adminrechte?

    • syne
    • 18. März 2010 um 18:09

    Ich würde tippen, dass man die auch braucht, sobald man an den Systemordner will, um dort Dateien zu schreiben etc.
    also @WindowsDir ^^

  • i=zufall

    • syne
    • 16. März 2010 um 19:03

    nimm doch die Function aus Leviathans Signatur :rofl:

    und sonst meinst du mit dem i vll das $i in der For-Schleife?

    [autoit]


    $n = 0
    For $i = Random(100, 200, 1) To Random(10, 20, 1) Step -1
    $n += 1
    Next
    MsgBox(0, "", $n)
    Exit

    [/autoit]
  • Der kleine Helfer

    • syne
    • 7. März 2010 um 01:59

    Die meisten wollen den Quellcode um sicherzugehen, dass du keinen Virus etc. postest. Und da man einer .exe einfach nur blind vertrauen kann und das Ergebnis nicht vorher sieht, prüft man lieber den Quellcode aus einer .au3 auf die wichtigsten Begriffe. Außerdem kann man mit dem Quellcode auch Verbesserungsvorschläge machen oder sich selbst neue Ideen und Techniken aneignen.


    Gruß syne

  • Snake

    • syne
    • 9. Februar 2010 um 19:24

    Cooles Spiel! :)
    Ich find die Idee mit den Steinen gut!
    Allerdings bewegt sich die Schlange meiner Meinung nach am Anfang zu langsam;)

    Und was cool wäre wenn sich die Steine z.B. alle 10 Punkte neu setzen würden:P

    gruß syne

  • Autoit crossfader

    • syne
    • 2. Februar 2010 um 13:22

    Wenn ich das richtig verstanden habe, wird beim Crossfader ein Lied lauter und eins leiser?
    d. h. du musst gleichzeitig mit einem Zähler die Lautstärke der einzelnen Tracks setzen:

    Spoiler anzeigen
    [autoit]


    For $i = 0 To 100 Step +1
    _SetVolume($track1, $i)
    _SetVolume($track2, 100-$i)
    Next

    [/autoit]
  • Treeview FileExplorer

    • syne
    • 25. Januar 2010 um 14:33

    Gute Arbeit die Funktion:)
    Ich hab schon öfters nach nem (Ex-)Style für den Treeview gesucht um die Dateien anzeigen zu lassen :rofl:

    Greetz syne:)

  • _FileListToRekursiv Update: 08.07.2011

    • syne
    • 25. Januar 2010 um 14:27

    meine Zahlen:

    1. Versuch : 218533 ms.
    2. Versuch : 183957 ms.
    3. Versuch : 43300 ms.

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™