xan Posted August 18, 2013 Share Posted August 18, 2013 (edited) Example Bubble sort expandcollapse popup#include <ButtonConstants.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> Global $posw = 3 Global $memoria = "mem...",$fim = False, $i,$array[9] = [8,5,7,3,1,6,4,2] #Region ### START Koda GUI section ### Form=d:\documents and settings\xan\meus documentos\bublesort.kxf $Form1 = GUICreate("Autoit", 738, 450, 192, 224) GUISetBkColor(0xD4D0C8) $Label1 = GUICtrlCreateLabel("Bubble Sort", 212, 5, 598, 177) GUICtrlSetFont(-1, 75, 400, 10, "MS Sans Serif") $b1 = GUICtrlCreateButton($array[0], 16, 114, 78, 80) GUICtrlSetFont(-1, 24, 400, 0, "MS Sans Serif") GUICtrlSetState(-1, 0) $b2 = GUICtrlCreateButton($array[1], 104, 114, 78, 80) GUICtrlSetFont(-1, 24, 400, 0, "MS Sans Serif") GUICtrlSetState(-1, 0) $b3 = GUICtrlCreateButton($array[2], 192, 114, 78, 80) GUICtrlSetFont(-1, 24, 400, 0, "MS Sans Serif") GUICtrlSetState(-1, 0) $b4 = GUICtrlCreateButton($array[3], 280, 114, 78, 80) GUICtrlSetFont(-1, 24, 400, 0, "MS Sans Serif") GUICtrlSetState(-1, 0) $b5 = GUICtrlCreateButton($array[4], 368, 114, 78, 80) GUICtrlSetFont(-1, 24, 400, 0, "MS Sans Serif") GUICtrlSetState(-1, 0) $b6 = GUICtrlCreateButton($array[5], 456, 114, 78, 80) GUICtrlSetFont(-1, 24, 400, 0, "MS Sans Serif") GUICtrlSetState(-1, 0) $b7 = GUICtrlCreateButton($array[6], 552, 114, 78, 80) GUICtrlSetFont(-1, 24, 400, 0, "MS Sans Serif") GUICtrlSetState(-1, 0) $b8 = GUICtrlCreateButton($array[7], 640, 114, 78, 80) GUICtrlSetFont(-1, 24, 400, 0, "MS Sans Serif") GUICtrlSetState(-1, 0) $Button3 = GUICtrlCreateButton("", 0, 366, 737, 17,0) GUICtrlSetFont(-1, 24, 400, 0, "MS Sans Serif") GUICtrlSetState(-1, $GUI_DEFBUTTON ) $for = GUICtrlCreateButton("Ordenar", 16, 8, 200, 81, $WS_BORDER) GUICtrlSetFont(-1, 24, 400, 0, "MS Sans Serif") GUICtrlSetBkColor(-1, 0xFF0000) $Button4 = GUICtrlCreateButton("....", 0, 250, 737, 17,0) GUICtrlSetFont(-1, 24, 400, 0, "MS Sans Serif") GUICtrlSetState(-1, 0 ) $while = GUICtrlCreateButton("While 0", 3, 305, 193, 129) GUICtrlSetFont(-1, 24, 400, 0, "MS Sans Serif") GUICtrlSetBkColor(-1, 0xFF0000) GUICtrlSetState(-1, $GUI_DISABLE) $mem = GUICtrlCreateButton("Memória", $posw + 12, 194, 161, 73, 0) GUICtrlSetFont(-1, 24, 400, 0, "MS Sans Serif") GUICtrlSetBkColor(-1, 0xA6CAF0) GUICtrlSetState(-1, $GUI_DISABLE) GUISetState(@SW_SHOW) #EndRegion ### END Koda GUI section ### While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $For ExitLoop Case $GUI_EVENT_CLOSE Exit EndSwitch WEnd Display() GUICtrlSetData($for, "For Stop") GUICtrlSetBkColor($for, 0xFF0000);ver Sleep(1000) GUICtrlSetBkColor($for, 0x009900) Sleep(500) GUICtrlSetBkColor($for, 0xffff00) Sleep(500) GUICtrlSetBkColor($for, 0x009900) Sleep(500) GUICtrlSetBkColor($for, 0xffff00) GUICtrlSetData($for, "For Start") Sleep(500) GUICtrlSetBkColor($for, 0x009900) Sleep(1000) For $i = 1 To 8 Step 1 GUICtrlSetData($for, "For $i = "&$i) BotCollor() Sleep(400) While $array[$i] < $array[$i-1] GUICtrlDelete($while) $while = GUICtrlCreateButton("While 1", $posw, 290, 193, 129) GUICtrlSetFont(-1, 24, 400, 0, "MS Sans Serif") GUICtrlSetBkColor(-1, 0x009900) GUICtrlSetState(-1, $GUI_DISABLE) $memoria = $array[$i] Display() $array[$i] = $array[$i-1] Display() $array[$i-1] = $memoria Display() $fim = False Sleep(700) GUICtrlDelete($while) $while = GUICtrlCreateButton("While 0", $posw, 290, 193, 129) GUICtrlSetFont(-1, 24, 400, 0, "MS Sans Serif") GUICtrlSetBkColor($while, 0xFF0000) $memoria = "mem..." Display() WEnd if $i >= 7 and $fim Then GUICtrlSetData($mem, " OK !!! ") GUICtrlSetData($for, "Ordenado !!!") Sleep(300) GUICtrlSetBkColor($for, 0xffffff) Sleep(300) GUICtrlSetBkColor($for, 0xffff00) Sleep(300) GUICtrlSetBkColor($for, 0xffffff) Sleep(300) GUICtrlSetBkColor($for, 0xffff00) Sleep(300) GUICtrlSetBkColor($for, 0xffffff) Sleep(300) GUICtrlSetBkColor($for, 0xffff00) Sleep(300) GUICtrlSetBkColor($for, 0xffffff) Sleep(300) GUICtrlSetBkColor($for, 0xffff00) Sleep(9000) Exit EndIf If $i >= 7 Then $i = 0 $fim = True EndIf Movewhile() next Func BotCollor() Switch $i Case 1 GUICtrlSetBkColor($B1, 0x666666) GUICtrlSetBkColor($B2, 0x9900cc) Case 2 GUICtrlSetBkColor($B2, 0x666666) GUICtrlSetBkColor($B3, 0x9900cc) Case 3 GUICtrlSetBkColor($B3, 0x666666) GUICtrlSetBkColor($B4, 0x9900cc) Case 4 GUICtrlSetBkColor($B4, 0x666666) GUICtrlSetBkColor($B5, 0x9900cc) Case 5 GUICtrlSetBkColor($B5, 0x666666) GUICtrlSetBkColor($B6, 0x9900cc) Case 6 GUICtrlSetBkColor($B6, 0x666666) GUICtrlSetBkColor($B7, 0x9900cc) Case 7 GUICtrlSetBkColor($B7, 0x666666) GUICtrlSetBkColor($B8, 0x9900cc) EndSwitch Sleep(300) EndFunc Func Movewhile() If $i >= 1 Then $posw += 90 GUICtrlSetData($mem, $memoria) GUICtrlSetBkColor($mem, 0xA6CAF0) GUICtrlSetState($mem, $GUI_DEFBUTTON ) GUICtrlSetPos($mem, $posw + 12) GUICtrlSetData($while, "While 0") GUICtrlSetPos($while, $posw) GUICtrlSetBkColor($while, 0xFF0000) GUICtrlSetBkColor($B1, 0xf5f5f5) GUICtrlSetBkColor($B2, 0xf5f5f5) GUICtrlSetBkColor($B3, 0xf5f5f5) GUICtrlSetBkColor($B4, 0xf5f5f5) GUICtrlSetBkColor($B5, 0xf5f5f5) GUICtrlSetBkColor($B6, 0xf5f5f5) GUICtrlSetBkColor($mem, 0xA6CAF0) Else GUICtrlSetBkColor($B7, 0xf5f5f5) GUICtrlSetBkColor($B8, 0xf5f5f5) GUICtrlSetBkColor($mem, 0xA6CAF0) While $posw > 3 $posw -= 1 GUICtrlSetPos($while, $posw) GUICtrlSetPos($mem, $posw+12) WEnd EndIf EndFunc Func Display() Sleep(60) GUICtrlSetData($b1, $array[0]) GUICtrlSetData($b2, $array[1]) GUICtrlSetData($b3, $array[2]) GUICtrlSetData($b4, $array[3]) GUICtrlSetData($b5, $array[4]) GUICtrlSetData($b6, $array[5]) GUICtrlSetData($b7, $array[6]) GUICtrlSetData($b8, $array[7]) GUICtrlSetPos($mem, $posw + 12) GUICtrlSetBkColor($mem, 0x9900cc) GUICtrlSetData($mem, $memoria) EndFunc Edited August 28, 2013 by xan Link to comment Share on other sites More sharing options...
xan Posted August 18, 2013 Author Share Posted August 18, 2013 (edited) Example Insertion Sort expandcollapse popup#include <GUIConstantsEx.au3> #include <ButtonConstants.au3> #include <WindowsConstants.au3> Global $num1 = 8, $num2 = 5, $num3 = 7, $num4 = 3, $num5 = 1, $num6 = 6, $num7 = 4, $num8 = 2, _ $posComp = 3, $CollorWhile = 0x9900cc, $B1x = 16, $B2x = 96, $B3x = 176, $B4x = 264, _ $B5x = 344, $B6x = 432, $B7x = 520, $B8x = 600, $aux = "Start !!", $Btcor #Region ### START Koda GUI section ### Form=d:\documents and settings\xan\meus documentos\booblesort.kxf $Form1 = GUICreate("Autoit", 742, 454, 192, 224) GUISetBkColor(0xD4D0C8) $Label1 = GUICtrlCreateLabel("InsertionSort", 170, 5, 598, 177) GUICtrlSetFont(-1, 75, 400, 10, "MS Sans Serif") $b1 = GUICtrlCreateButton($num1, 16, 114, 78, 80) GUICtrlSetFont(-1, 24, 400, 0, "MS Sans Serif") GUICtrlSetState(-1, 0) $b2 = GUICtrlCreateButton($num2, 104, 114, 78, 80) GUICtrlSetFont(-1, 24, 400, 0, "MS Sans Serif") GUICtrlSetState(-1, 0) $b3 = GUICtrlCreateButton($num3, 192, 114, 78, 80) GUICtrlSetFont(-1, 24, 400, 0, "MS Sans Serif") GUICtrlSetState(-1, 0) $b4 = GUICtrlCreateButton($num4, 280, 114, 78, 80) GUICtrlSetFont(-1, 24, 400, 0, "MS Sans Serif") GUICtrlSetState(-1, 0) $b5 = GUICtrlCreateButton($num5, 370, 114, 78, 80) GUICtrlSetFont(-1, 24, 400, 0, "MS Sans Serif") GUICtrlSetState(-1, 0) $b6 = GUICtrlCreateButton($num6, 460, 114, 78, 80) GUICtrlSetFont(-1, 24, 400, 0, "MS Sans Serif") GUICtrlSetState(-1, 0) $b7 = GUICtrlCreateButton($num7, 552, 114, 78, 80) GUICtrlSetFont(-1, 24, 400, 0, "MS Sans Serif") GUICtrlSetState(-1, 0) $b8 = GUICtrlCreateButton($num8, 640, 114, 78, 80) GUICtrlSetFont(-1, 24, 400, 0, "MS Sans Serif") GUICtrlSetState(-1, 0) $Button3 = GUICtrlCreateButton("", 0, 366, 737, 17,0) GUICtrlSetFont(-1, 24, 400, 0, "MS Sans Serif") GUICtrlSetState(-1, $GUI_DISABLE ) $ordenar = GUICtrlCreateButton("Sort", 16, 8, 150, 81, $WS_BORDER) GUICtrlSetFont(-1, 24, 400, 0, "MS Sans Serif") GUICtrlSetBkColor(-1, 0xFF0000) $Button4 = GUICtrlCreateButton("....", 0, 250, 737, 17,0) GUICtrlSetFont(-1, 75, 400, 0, "MS Sans Serif") GUICtrlSetState(-1, $GUI_DISABLE) $while = GUICtrlCreateButton("While 0", 16, 290, 700, 121, $WS_BORDER) GUICtrlSetFont(-1, 75, 400, 0, "MS Sans Serif") GUICtrlSetBkColor(-1, 0xFF0000) GUICtrlSetState(-1, $GUI_DISABLE) $mem = GUICtrlCreateButton("Memory", $posComp + 13, 195, 165, 93, 0) GUICtrlSetFont(-1, 28, 400, 0, "MS Sans Serif") GUICtrlSetBkColor(-1, 0xA6CAF0) GUISetState(@SW_SHOW) #EndRegion ### END Koda GUI section ### While 1 if GUIGetMsg() = $ordenar Then $CollorWhile = 0x009900 GUICtrlSetBkColor($ordenar, 0xffff33) GUICtrlSetBkColor($while, $CollorWhile) Sleep(500) ExitLoop EndIf WEnd While 1 GUICtrlSetBkColor($B1, 0xf5f5f5) GUICtrlSetBkColor($B2, 0xf5f5f5) GUICtrlSetBkColor($B3, 0xf5f5f5) GUICtrlSetBkColor($B4, 0xf5f5f5) GUICtrlSetBkColor($B5, 0xf5f5f5) GUICtrlSetBkColor($B6, 0xf5f5f5) GUICtrlSetBkColor($B7, 0xf5f5f5) GUICtrlSetBkColor($B8, 0xf5f5f5) $CollorWhile = 0x00cc33 GUICtrlSetBkColor($while, $CollorWhile) GUICtrlSetData($while, "While 1") Sleep(200) if $aux = False Then GUICtrlDelete($mem) $mem = GUICtrlCreateButton("OK !!", $posComp + 13, 195, 165, 93, 0) GUICtrlSetFont(-1, 24) GUICtrlSetData($while, "Orderly !!!") While $posComp > 3 $posComp -= 2 GUICtrlSetPos($mem, $posComp +12) Sleep(1) WEnd Sleep(6000) Exit EndIf $aux = False if $num1 > $num2 Then $aux = $num1 Comparador() $num1= "..." Troca() $num1= $num2 $num2= "..." Troca() $num2= $aux $aux = "..." Troca() ElseIf $num2 > $num3 Then $aux = $num2 Comparador() $num2= "..." Troca() $num2 = $num3 $num3= "..." Troca() $num3 = $aux $aux = "..." Troca() ElseIf $num3 > $num4 Then $aux = $num3 Comparador() $num3= "..." Troca() $num3 = $num4 $num4= "..." Troca() $num4 = $aux $aux = "..." Troca() ElseIf $num4 > $num5 Then $aux = $num4 Comparador() $num4= "..." Troca() $num4 = $num5 $num5= "..." Troca() $num5 = $aux $aux = "..." Troca() ElseIf $num5 > $num6 Then $aux = $num5 Comparador() $num5= "..." Troca() $num5 = $num6 $num6= "..." Troca() $num6 = $aux $aux = "..." Troca() ElseIf $num6 > $num7 Then $aux = $num6 Comparador() $num6= "..." Troca() $num6 = $num7 $num7= "..." Troca() $num7 = $aux $aux = "..." Troca() ElseIf $num7 > $num8 Then $aux = $num7 Comparador() $num7= "..." Troca() $num7 = $num8 $num8= "..." Troca() $num8 = $aux $aux = "..." Troca() EndIf WEnd Func Comparador() $CollorWhile = 0x009900 Switch $aux case $num1 $posComp = 3 $Btcor = $B1 Case $num2 $posComp = 93 $Btcor = $B2 Case $num3 $posComp = 183 $Btcor = $B3 Case $num4 $posComp = 273 $Btcor = $B4 Case $num5 $posComp = 363 $Btcor = $B5 Case $num6 $posComp = 453 $Btcor = $B6 Case $num7 $posComp = 543 $Btcor = $B7 Case $num8 $posComp = 633 $Btcor = $B8 EndSwitch GUICtrlSetBkColor($Btcor, 0x999999) GUICtrlSetData($mem, ">>") GUICtrlSetPos($mem, $posComp + 12) Sleep(300) GUICtrlSetBkColor($while, $CollorWhile) GUICtrlSetBkColor($mem, 0x999999) Sleep(300) EndFunc Func Troca() GUICtrlSetBkColor($Btcor, 0xf5f5f5) GUICtrlSetData($B1,$num1) GUICtrlSetData($B2,$num2) GUICtrlSetData($B3,$num3) GUICtrlSetData($B4,$num4) GUICtrlSetData($B5,$num5) GUICtrlSetData($B6,$num6) GUICtrlSetData($B7,$num7) GUICtrlSetData($B8,$num8) GUICtrlSetData($mem,$aux) GUICtrlSetData($mem,$aux) GUICtrlSetPos($mem, $posComp + 12) Sleep(500) EndFunc Edited August 18, 2013 by xan Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now