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. $var

Beiträge von $var

  • GDI+ und Controls

    • $var
    • 5. Juni 2012 um 22:13

    Sorry, ich muss hier pushen.
    Es ist ziemlich dringend und ich bekomme es selbst leider nicht auf die Reihe...

  • ordner mit relativer pfadangabe löschen

    • $var
    • 5. Juni 2012 um 13:08
    [autoit]

    @ScriptDir
    @DesktopDir
    @MyDocumentsDir
    ; usw...

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

    ; Such mal in der Hilfe nach "Makros".

    [/autoit]
  • GDI+ und Controls

    • $var
    • 4. Juni 2012 um 23:37

    Ich melde mich nun wieder.

    Leider komme ich mit der Funktion nicht zurecht.
    Wenn ich sie gleich nach der Erstellung des Inputs anwende, funktioniert es perfekt.
    Rufe ich die Funktion aber später auf (siehe Beispielscript #2), scheint es irgendwie zu spinnen...
    Es blinkt die ganze Zeit. Sprich: es wird übermalt. Manchmal verschwindet in dem angegebenen Bereich die obere der beiden verwendeten Grafiken.
    Ich kann es nicht wirklich erklären, da ich es einfach nicht verstehe.

    Im Anhang sind zwei Dummygrafiken, die ich für eine genaue Nachstellung der Situation gemacht habe.

    Im ersten Script benutze ich die Funktion am Anfang und erhalte den gewünschten Effekt.

    Beispiel #1 - Funktioniert
    [autoit]

    #NoTrayIcon
    #include <GDIPlus.au3>
    #include <WindowsConstants.au3>

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

    _GDIPlus_Startup ()
    Opt ("GUIOnEventMode", 1)

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

    Global Const $i_WIDTH = 640, $i_HEIGHT = 680

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

    Global $h_Gui = GUICreate ("", $i_WIDTH, $i_HEIGHT)
    Global $h_Input = GUICtrlCreateInput ("", 36, 623, 564, 14, Default, 0x00000020)

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

    Global $h_Graphic = _GDIPlus_GraphicsCreateFromHWND ($h_Gui)
    Global $h_Bitmap = _GDIPlus_BitmapCreateFromGraphics ($i_WIDTH, $i_HEIGHT, $h_Graphic)
    Global $h_Backbuffer = _GDIPlus_ImageGetGraphicsContext ($h_Bitmap)

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

    Global $h_Dummy1 = _GDIPlus_ImageLoadFromFile ('dummylayer1.png')
    Global $h_Dummy2 = _GDIPlus_ImageLoadFromFile ('dummylayer2.png')

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

    ;GUICtrlSetState ($h_Input, 32) ; 32 == $GUI_HIDE
    _GDIPlus_GraphicsSetClipRect ($h_Backbuffer, 36, 623, 564, 14, 3)

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

    GUIRegisterMsg (0x000F, "WM_PAINT")
    GUISetOnEvent (-3, "_Exit", $h_Gui)
    GUISetOnEvent (-7, "_PrimaryDown", $h_Gui)
    OnAutoItExitRegister ("_OnExit")
    GUISetState (@SW_SHOW, $h_Gui)

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

    While Sleep (25)
    _GDIPlus_GraphicsClear ($h_Backbuffer, 0xFF00FF00)
    _GDIPlus_GraphicsDrawImage ($h_Backbuffer, $h_Dummy1, 0, 0)
    _GDIPlus_GraphicsDrawImage ($h_Backbuffer, $h_Dummy2, 0, 0)
    _WinAPI_RedrawWindow ($h_Gui, 0, 0, $RDW_INTERNALPAINT)
    WEnd

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

    Func _PrimaryDown ()
    Local $a_Pos = GUIGetCursorInfo ($h_Gui)
    If IsArray ($a_Pos) Then
    Select
    Case _InRect ($a_Pos, 36, 623, 564, 14)
    ;GUICtrlSetState ($h_Input, 16) ; 16 == $GUI_SHOW
    ;_GDIPlus_GraphicsSetClipRect ($h_Backbuffer, 36, 623, 564, 14, 3)
    EndSelect
    EndIf
    EndFunc ;==> _PrimaryDown

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

    Func _GDIPlus_GraphicsSetClipRect ($hGraphics, $nX, $nY, $nWidth, $nHeight, $iCombineMode = 0)
    Local $aResult = DllCall ($ghGDIPDll, "uint", "GdipSetClipRect", "hwnd", $hGraphics, "float", $nX, "float", $nY, "float", $nWidth, "float", $nHeight, "int", $iCombineMode)
    If @error Then Return SetError (@error, @extended, False)
    $GDIP_STATUS = $aResult[0]
    Return $aResult[0] = 0
    EndFunc ;==> _GDIPlus_GraphicsSetClipRect

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

    Func _InRect ($aPoint, $iXRect, $iYRect, $iWidthRect, $iHeightRect)
    If $aPoint[0] >= $iXRect And $aPoint[1] >= $iYRect And $aPoint[0] <= $iXRect + $iWidthRect And $aPoint[1] <= $iYRect + $iHeightRect Then Return 1
    Return 0
    EndFunc ;==> _InRect

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

    Func WM_PAINT ()
    _GDIPlus_GraphicsDrawImageRect ($h_Graphic, $h_Bitmap, 0, 0, $i_WIDTH, $i_HEIGHT)
    EndFunc ;==> WM_PAINT

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

    Func _Exit ()
    Exit
    EndFunc ;==> _Exit

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

    Func _OnExit ()
    _GDIPlus_GraphicsDispose ($h_Graphic)
    _GDIPlus_BitmapDispose ($h_Bitmap)
    _GDIPlus_Shutdown ()
    EndFunc ;==> _OnExit

    [/autoit]


    In diesem Script will ich den Input erst beim Klick auf den hellblauen Bereich anzeigen lassen, was jedoch nicht klappt.

    Beispiel #2 - Funktioniert nicht
    [autoit]

    #NoTrayIcon
    #include <GDIPlus.au3>
    #include <WindowsConstants.au3>

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

    _GDIPlus_Startup ()
    Opt ("GUIOnEventMode", 1)

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

    Global Const $i_WIDTH = 640, $i_HEIGHT = 680

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

    Global $h_Gui = GUICreate ("", $i_WIDTH, $i_HEIGHT)
    Global $h_Input = GUICtrlCreateInput ("", 36, 623, 564, 14, Default, 0x00000020)

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

    Global $h_Graphic = _GDIPlus_GraphicsCreateFromHWND ($h_Gui)
    Global $h_Bitmap = _GDIPlus_BitmapCreateFromGraphics ($i_WIDTH, $i_HEIGHT, $h_Graphic)
    Global $h_Backbuffer = _GDIPlus_ImageGetGraphicsContext ($h_Bitmap)

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

    Global $h_Dummy1 = _GDIPlus_ImageLoadFromFile ('dummylayer1.png')
    Global $h_Dummy2 = _GDIPlus_ImageLoadFromFile ('dummylayer2.png')

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

    GUICtrlSetState ($h_Input, 32) ; 32 == $GUI_HIDE
    ;_GDIPlus_GraphicsSetClipRect ($h_Backbuffer, 36, 623, 564, 14, 3)

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

    GUIRegisterMsg (0x000F, "WM_PAINT")
    GUISetOnEvent (-3, "_Exit", $h_Gui)
    GUISetOnEvent (-7, "_PrimaryDown", $h_Gui)
    OnAutoItExitRegister ("_OnExit")
    GUISetState (@SW_SHOW, $h_Gui)

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

    While Sleep (25)
    _GDIPlus_GraphicsClear ($h_Backbuffer, 0xFF00FF00)
    _GDIPlus_GraphicsDrawImage ($h_Backbuffer, $h_Dummy1, 0, 0)
    _GDIPlus_GraphicsDrawImage ($h_Backbuffer, $h_Dummy2, 0, 0)
    _WinAPI_RedrawWindow ($h_Gui, 0, 0, $RDW_INTERNALPAINT)
    WEnd

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

    Func _PrimaryDown ()
    Local $a_Pos = GUIGetCursorInfo ($h_Gui)
    If IsArray ($a_Pos) Then
    Select
    Case _InRect ($a_Pos, 36, 623, 564, 14)
    GUICtrlSetState ($h_Input, 16) ; 16 == $GUI_SHOW
    _GDIPlus_GraphicsSetClipRect ($h_Backbuffer, 36, 623, 564, 14, 3) ; <== Funktioniert nicht so, wie geplant.
    EndSelect
    EndIf
    EndFunc ;==> _PrimaryDown

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

    Func _GDIPlus_GraphicsSetClipRect ($hGraphics, $nX, $nY, $nWidth, $nHeight, $iCombineMode = 0)
    Local $aResult = DllCall ($ghGDIPDll, "uint", "GdipSetClipRect", "hwnd", $hGraphics, "float", $nX, "float", $nY, "float", $nWidth, "float", $nHeight, "int", $iCombineMode)
    If @error Then Return SetError (@error, @extended, False)
    $GDIP_STATUS = $aResult[0]
    Return $aResult[0] = 0
    EndFunc ;==> _GDIPlus_GraphicsSetClipRect

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

    Func _InRect ($aPoint, $iXRect, $iYRect, $iWidthRect, $iHeightRect)
    If $aPoint[0] >= $iXRect And $aPoint[1] >= $iYRect And $aPoint[0] <= $iXRect + $iWidthRect And $aPoint[1] <= $iYRect + $iHeightRect Then Return 1
    Return 0
    EndFunc ;==> _InRect

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

    Func WM_PAINT ()
    _GDIPlus_GraphicsDrawImageRect ($h_Graphic, $h_Bitmap, 0, 0, $i_WIDTH, $i_HEIGHT)
    EndFunc ;==> WM_PAINT

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

    Func _Exit ()
    Exit
    EndFunc ;==> _Exit

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

    Func _OnExit ()
    _GDIPlus_GraphicsDispose ($h_Graphic)
    _GDIPlus_BitmapDispose ($h_Bitmap)
    _GDIPlus_Shutdown ()
    EndFunc ;==> _OnExit

    [/autoit]

    Ich entschuldige mich für den unordentlichen Code. Habe da etwas herumgetestet... ~,~
    Wäre nett, wenn jemand mal drüberschauen könnte... Ich verstehe es nämlich überhaupt nicht.

    Dateien

    dummylayer1.png 506,35 kB – 0 Downloads dummylayer2.png 86,31 kB – 0 Downloads
  • Processbar richtig einsetzen

    • $var
    • 4. Juni 2012 um 23:04
    [autoit]

    ;$i_Maximalwert = 100%
    ;$i_DerzeitigerWert = $i_X%

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

    $i_X = $i_DerzeitigerWert * 100 / $i_Maximalwert

    [/autoit]

    Und $i_X setzt du dann bei jedem Schleifendurchgang mit GUICtrlSetData.

  • "Go" Button mit Liste verknüpfen

    • $var
    • 4. Juni 2012 um 21:56

    Der Code kommt mir doch irgendwie bekannt vor... <_<"

    Spoiler anzeigen
    [autoit]

    Global $a_Inhalt[9][4] = [ _
    ["Google", "Inhalt #1", "List3 #1", "www.google.de"], _
    ["Youtube", "Inhalt #2", "List3 #2", "www.youtube.com"], _
    [3, "Inhalt #3", "List3 #3"], _
    [4, "Inhalt #4", "List3 #4"], _
    [5, "Inhalt #5", "List3 #5"], _
    [6, "Inhalt #6", "List3 #6"], _
    [7, "Inhalt #7", "List3 #7"], _
    [8, "Inhalt #8", "List3 #8"], _
    [9, "Inhalt #9", "List3 #9"]]

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

    $h_Gui = GUICreate ("", 650, 250)
    $h_List1 = GUICtrlCreateList ("", 10, 10, 160, 160)
    $h_List2 = GUICtrlCreateList ("", 180, 10, 160, 160)
    $h_List3 = GUICtrlCreateList ("", 350, 10, 160, 160)

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

    For $i = 0 To UBound ($a_Inhalt) - 1
    GUICtrlSetData ($h_List1, $a_Inhalt[$i][0])
    Next

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

    $h_Go = GUICtrlCreateButton("Go", 10, 200, 50, 26)

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

    GUISetState (@SW_SHOW, $h_Gui)

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

    While True
    Switch GUIGetMsg ()
    Case -3
    Exit
    Case $h_List1
    $s_Read = GUICtrlRead ($h_List1)
    For $i = 0 To UBound ($a_Inhalt) - 1
    If $s_Read = $a_Inhalt[$i][0] Then
    GUICtrlSetData ($h_List2, "")
    GUICtrlSetData ($h_List2, $a_Inhalt[$i][1])
    GUICtrlSetData ($h_List3, "")
    GUICtrlSetData ($h_List3, $a_Inhalt[$i][2])
    ExitLoop
    EndIf
    Next
    Case $h_Go
    $s_Read = GUICtrlRead ($h_List1)
    For $i = 0 To UBound ($a_Inhalt) - 1
    If $s_Read = $a_Inhalt[$i][0] Then ExitLoop ShellExecute ($a_Inhalt[$i][3])
    Next
    EndSwitch
    WEnd

    [/autoit]
  • GDI+ und Controls

    • $var
    • 3. Juni 2012 um 20:33

    Das ist eine sehr schöne Funktion und klappt soweit, so wie ich es mir wünsche.

    Doch wie ist es, wenn ich die Buttons ausblenden will? In dem Bereich wird ja nicht mehr gezeichnet.
    Wie kann ich es wieder 'unsetten'?

    €:

    [autoit]

    $iCombineMode = 0

    [/autoit]

    Das hätte ich mir durchlesen sollen. Sorry. .__.

    Vielen Dank! :thumbup:

  • GDI+ und Controls

    • $var
    • 3. Juni 2012 um 11:55

    Guten Tag. ;D

    Da ich ein ziemlicher Noob auf dem Bereich bin und hier sicher viele Kenner unterwegs sind, wollte ich mal etwas 'grundlegendes' fragen.
    Also... Wie geht man am besten mit den Controls (Inputs, Buttons usw) um, wenn man gleichzeitig auf derselben Fläche (Hintergrund) Grafiken mit GDI+ zeichnet?

    Wenn ich die Controls direkt in der GUI erstelle, werden sie ja logischerweise übermalt.
    Wenn ich sie aber auf einer bzw. mehreren Child-GUI's erstelle, dann verliert die Parent-GUI bei Eingaben ihren Fokus,
    was unschön und ungünstig ist, weil der Parent in meinem Fall immer Events empfangen muss (Mausklicks u. ä.).

    Welche Lösungen gäbe es denn dafür?

    LG

  • Ordnernamen mit _FileListToArray in ListBox

    • $var
    • 2. Juni 2012 um 21:00
    Zitat von iFreak95

    Naja ich arbeite seit fast einem Jahr mit Autoit und rufe Functions seit beginn mit call("") auf... Das hat bisher auch immer geklappt?! ?(

    Das klappt natürlich. Ist aber nicht wirklich sinnvoll.
    Erstens ist es mehr "Schreibarbeit" und zweitens dauert die Ausführung viel länger.

    Hier mal ein Script zur Verdeutlichung:

    Spoiler anzeigen
    [autoit]

    Global $i_Timer

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

    $i_Timer = TimerInit ()
    For $i = 1 To 100000
    _foo ()
    Next
    $i_Timer = TimerDiff ($i_Timer)
    ConsoleWrite ("Normal:" &@TAB& $i_Timer &@CRLF)

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

    $i_Timer = TimerInit ()
    For $i = 1 To 100000
    Call ("_foo")
    Next
    $i_Timer = TimerDiff ($i_Timer)
    ConsoleWrite ("Call:" &@TAB& $i_Timer &@CRLF)

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

    Func _foo ()
    EndFunc

    [/autoit]
  • endlos funktion

    • $var
    • 2. Juni 2012 um 16:02

    Wieso übergibst du nicht einfach ein eindimensionales Array mit eindimensionalen Arrays...? Wäre doch ganz einfach.

  • PixelPixelChecksum und Timer

    • $var
    • 1. Juni 2012 um 22:23

    Was genau klappt nicht? -_____-

  • PixelPixelChecksum und Timer

    • $var
    • 1. Juni 2012 um 21:59

    Dein Problem ist wohl, dass du den Timer nicht zurücksetzt... Nehme ich mal an.

    Spoiler anzeigen
    [autoit]

    dim $checksum_koords [4]
    $checksum_koords[0]=1002
    $checksum_koords[1]=1070
    $checksum_koords[2]=571
    $checksum_koords[3]=581

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

    $Timer=TimerInit()
    While 1
    $checksum =PixelChecksum($window[0]+$checksum_koords[0],$window[1]+$checksum_koords[2], $window[0]+$checksum_koords[1],$window[1]+$checksum_koords[3])

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

    If TimerDiff($Timer) > 1000 Then
    $Timer=TimerInit()
    If $checksum == PixelChecksum($window[0]+$checksum_koords[0],$window[1]+$checksum_koords[2], $window[0]+$checksum_koords[1],$window[1]+$checksum_koords[3]) Then
    MsgBox(0,"","")
    EndIf
    EndIf
    WEnd

    [/autoit]
  • FileMove nur 10 Dateien verschieben

    • $var
    • 31. Mai 2012 um 23:23
    [autoit]

    #include <File.au3>
    #include <Array.au3>

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

    Global $s_From = @MyDocumentsDir, $s_To = @DesktopDir & "\Test", $i_Count
    Global $a_File = _FileListToArray ($s_From, "*.jpg", 1)
    If Not IsArray ($a_File) Then
    Exit
    ElseIf $a_File[0] < 10 Then
    $i_Count = $a_File[0]
    Else
    $i_Count = 10
    EndIf

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

    For $i = 1 To $i_Count
    FileMove ($s_From & "\" & $a_File[$i], $s_To & "\" & $a_File[$i])
    Next

    [/autoit]
  • IniWrite

    • $var
    • 30. Mai 2012 um 16:02

    Es müsste so aussehen:

    [autoit]

    ClipPut("")

    [/autoit]
  • $GUI_HIDE ansprechbar machen?

    • $var
    • 26. Mai 2012 um 21:42
    [autoit]

    GUICtrlSetBkColor (GUICtrlCreateGraphic (10, 10, 100, 100), $GUI_BKCOLOR_TRANSPARENT)
    ; Die Konstante ist in GUIConstantsEx.au3 zu finden.

    [/autoit]
  • $GUI_HIDE ansprechbar machen?

    • $var
    • 26. Mai 2012 um 21:15

    Benutz

    [autoit]

    GUICtrlCreateGraphic()

    [/autoit]

    für die pseudo-Buttons.

  • Text Link funktioniert nicht richtig

    • $var
    • 26. Mai 2012 um 00:19

    Ich hätte nichts dagegen. :rofl:

  • Text Link funktioniert nicht richtig

    • $var
    • 26. Mai 2012 um 00:12
    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("Form1", 623, 442, 192, 124)
    GUISetState(@SW_SHOW)

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

    $link = GUICtrlCreateLabel("link here", 50, 30, 100)
    GuiCtrlSetColor(-1,0x0000FF)
    GUICtrlSetFont(-1, 11, 700,2, "Arial")
    GuiCtrlSetCursor(-1,0)

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

    $bool = 0

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

    GUISetState(@SW_SHOW)

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

    #EndRegion ### END Koda GUI section ###

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

    While 1
    _link()
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $link
    shellExecute("http://www.youtube.com/watch?v=-XCbpBUXU0w")
    EndSwitch
    WEnd

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

    Func _link()
    $ret = GUIGetCursorInfo()
    If $ret[4] = $link And Not $bool Then
    $bool = 1
    GUICtrlSetFont($link,8,400,4,"MS Sans Serif")
    ElseIf $bool And Not ($ret[4]=$link) Then
    $bool = 0
    GUICtrlSetFont($link,8,400,0,"MS Sans Serif")
    EndIf
    endfunc

    [/autoit]
  • For...To...Next abbrechen

    • $var
    • 25. Mai 2012 um 23:54

    Benutz den OnEventMode. :P

    [autoit]

    Opt ("GUIOnEventMode", 1)

    [/autoit]
  • Pixel eines Icons einfärben

    • $var
    • 25. Mai 2012 um 14:46
    [autoit]

    TraySetIcon()

    [/autoit]

    ??

  • Scriptfehler + Checkboxen

    • $var
    • 24. Mai 2012 um 21:28

    Meinst du so etwas?

    Spoiler anzeigen
    [autoit]

    Global $Formtop, $a_Checkbox[15], $a_Input[15], $ButtonOK, $ButtonCancel

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

    $Formtop = GUICreate("Punkte", 614, 447, 192, 122)
    For $i = 0 To 14
    $a_Checkbox[$i] = GUICtrlCreateCheckbox ("TOP "& $i + 1 &":", 16, 16 + ($i * 24), 54, 17)
    $a_Input[$i] = GUICtrlCreateInput ("", 80, 16 + ($i * 24), 521, 21)
    If $i > 0 Then GUICtrlSetState ($a_Checkbox[$i], 128)
    Next

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

    $ButtonOK = GUICtrlCreateButton("Weiter", 80, 392, 137, 33)
    $ButtonCancel = GUICtrlCreateButton("Abbrechen", 360, 392, 145, 33)
    GUISetState(@SW_SHOW)

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

    While True
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case -3
    Exit
    Case $ButtonCancel
    Exit
    Case $ButtonOK
    $I1 = GUICtrlRead($a_Input[0])
    $C1 = GUICtrlRead($a_Checkbox[0])
    If $C1 = 1 Then
    $TOP1 = (@CRLF & "TOP 1: " & $I1)
    Else
    $TOP1 = ("")
    EndIf
    $I2 = GUICtrlRead($a_Input[1])
    $C2 = GUICtrlRead($a_Checkbox[1])
    If $C2 = 1 Then
    $TOP2 = (@CRLF & "TOP 2: " & $I2)
    Else
    $TOP2 = ("")
    EndIf
    $I3 = GUICtrlRead($a_Input[2])
    $C3 = GUICtrlRead($a_Checkbox[2])
    If $C3 = 1 Then
    $TOP3 = (@CRLF & "TOP 3: " & $I3)
    Else
    $TOP3 = ("")
    EndIf
    GUIDelete($Formtop)
    ExitLoop
    EndSwitch
    For $i = 0 To 14
    If $nMsg = $a_Checkbox[$i] Then
    If GUICtrlRead ($a_Checkbox[$i]) = 1 Then
    GUICtrlSetState ($a_Checkbox[$i + 1], 64)
    Else
    For $j = $i + 1 To 14
    GUICtrlSetState ($a_Checkbox[$j], 132)
    Next
    EndIf
    EndIf
    Next
    WEnd

    [/autoit]

    Du solltest dich wirklich mal mit Arrays auseinandersetzen. Es hilft ungemein.

    Ah ja, falsch waren übrigens die Else-Abfragen.

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™