Jump to content

kyriakos

Members
  • Posts

    4
  • Joined

  • Last visited

kyriakos's Achievements

Seeker

Seeker (1/7)

0

Reputation

  1. thanks it works for win7 ultimate
  2. thanks for the help guys i found it myself. you allways have to put the correct number of dimenions of the array ($i,$j) . if for example $j max = 5 and you put i = 1 to 6 then it loops for ever. here is the correct code CODE#Include <File.au3> #Include <Array.au3> #include <GuiConstants.au3> $i=0 $k=0 $m=0 $o=0 $i_max=0 Global $ins_btn[20][20] Dim $k_max[20] Dim $auto_ins_btn[30][30] Dim $icon[30][30] Dim $lbl[30][30] dim $info[30][30] Dim $tab[30] Dim $text[30] $mainwindow = GUICreate("Setup CD Kyriakos", 800, 600,-1,-1,-1) $font="Comic Sans MS" GUISetFont (10, 400, 1, $font,$mainwindow) $tabmain=GUICtrlCreateTab (10,10, 780,580,$TCS_MULTILINE ) $folderListbase=_FileListToArray(".\","*.",2) If @Error=1 Then MsgBox (0,"","No Files\Folders Found.") Exit EndIf for $folders in $folderListbase $FileList=_FileListToArray(".\"&$folders,"*.",2) If @Error=4 Then $Pos = _ArraySearch ($folderListbase, $folders, 0, 0, 0, True) _ArrayDelete($folderListbase,$Pos) ;$i=0 ;Return EndIf Next $Pos = _ArraySearch ($folderListbase, "lexika", 0, 0, 0, True) _ArrayDelete($folderListbase,$Pos) $Pos = _ArraySearch ($folderListbase, "Tweak", 0, 0, 0, True) _ArrayDelete($folderListbase,$Pos) $Pos = _ArraySearch ($folderListbase, "Games_small", 0, 0, 0, True) _ArrayDelete($folderListbase,$Pos) create_btns() Func create_btns() for $folders in $folderListbase ;MsgBox(1,$i,$folders) if $i<>0 Then $tab[$i]=GUICtrlCreateTabitem ($i&". "&$folders) $text[$i]=GUICtrlCreateEdit("",450,70,300,450,$ES_MULTILINE) $FileList=_FileListToArray(".\"&$folders,"*.",2) for $folders2 in $FileList if $k<>0 Then $lbl[$i][$k]=GUICtrlCreateLabel ($k&". "&StringLeft($folders2,15), 40,40+$m,150,20); $ins_btn[$i][$k]=GUICtrlCreateButton ("",250,40+$m,30,30,$BS_ICON) GUICtrlSetImage (-1, ".\Scripts\icons\install.ico") $auto_ins_btn[$i][$k]=GUICtrlCreateButton ("",300,40+$m,30,30,$BS_ICON) GUICtrlSetImage (-1, ".\Scripts\icons\kkk.ico") $icon[$i][$k]=GUICtrlCreateIcon(".\"&$folders&"\"&$folders2&"\icon.ico",-1,350,40+$m,40,40) $info[$i][$k]=".\"&$folders&"\"&$folders2&"\info.txt" EndIf $m += 35 $k += 1 Next if $k>$k_max[$i] Then $k_max[$i] = $k EndIf $i += 1 $k=0 $m=0 if $i>$i_max Then $i_max=$i Next MsgBox(1,$i,$i_max) _ArrayDisplay($k_max) EndFunc GUICtrlCreateTabitem (""); end tabitem definition $temp_lbl=GUICtrlCreateLabel ("label1324", 200,570,350,20) GUISetState( @SW_SHOW ) Do $msg = GUIGetMsg() For $i = 1 to $i_max-1 For $j = 1 To $k_max[$i]-1 If $msg = $ins_btn[$i][$j] Then; <========================================== Here WAS the problem $m += 1 GUICtrlSetData($temp_lbl,$m&" "&$i&"|"&$j);"&$j) EndIf Next Next info_load() Until $msg = $GUI_EVENT_CLOSE Func info_load() If WinActive($mainwindow) Then $ggci = GUIGetCursorInfo($mainwindow) For $i=1 to 15 For $k=1 to 15 If $ggci[4] = $lbl[$i][$k] Then GUICtrlSetData($text[$i],FileRead($info[$i][$k], FileGetSize($info[$i][$k]))) Else ;; Mouse has left button_0 EndIf Next Next EndIf EndFunc
  3. No the buttons are created just fine. is just that i cannot assign the to do something here is the problem. this works CODE #include <guiconstants.au3> Global $Button[11][11] GUICreate("" ) For $a = 1 to 10 For $b = 1 to 10 $Button[$a][$b] = GUICtrlCreateButton( "Button[" & $a & "][" & $b & "]" , $a * 45 , $b * 45 , 30 , 30) Next Next GUISetState( @SW_SHOW ) Do $msg = GUIGetMsg() For $i = 1 to 10 For $j = 1 To 10 If $msg = $Button[$i][$j] Then MsgBox( 0, "", "Perform some action cuz a button was clicked." ) EndIf Next Next Until $msg = $GUI_EVENT_CLOSE this does NOT work CODE #Include <File.au3> #Include <Array.au3> #include <GuiConstants.au3> $i=0 $k=0 $m=0 $o=0 Global $ins_btn[20][20] Dim $auto_ins_btn[30][30] Dim $icon[30][30] Dim $lbl[30][30] dim $info[30][30] Dim $tab[30] Dim $text[30] $mainwindow = GUICreate("Setup CD Kyriakos", 800, 600,-1,-1,-1) $font="Comic Sans MS" GUISetFont (10, 400, 1, $font,$mainwindow) $tabmain=GUICtrlCreateTab (10,10, 780,580,$TCS_MULTILINE ) $folderListbase=_FileListToArray(".\","*.",2) If @Error=1 Then MsgBox (0,"","No Files\Folders Found.") Exit EndIf ;$Pos = _ArraySearch ($folderListbase, "test", 0, 0, 0, True) ;_ArrayDelete($folderListbase,$Pos) $Pos = _ArraySearch ($folderListbase, "Tweak", 0, 0, 0, True) _ArrayDelete($folderListbase,$Pos) $Pos = _ArraySearch ($folderListbase, "Games_small", 0, 0, 0, True) _ArrayDelete($folderListbase,$Pos) create_btns() Func create_btns() for $folders in $folderListbase ;MsgBox(1,$i,$folders) if $i<>0 Then $tab[$i]=GUICtrlCreateTabitem ($i&". "&$folders) $text[$i]=GUICtrlCreateEdit("",450,70,300,450,$ES_MULTILINE) $FileList=_FileListToArray(".\"&$folders,"*.",2) If @Error=4 Then $Pos = _ArraySearch ($folderListbase, $folders, 0, 0, 0, True) _ArrayDelete($folderListbase,$Pos) $i=0 Return EndIf ;_ArrayDisplay($FileList) for $folders2 in $FileList if $k<>0 Then $lbl[$i][$k]=GUICtrlCreateLabel ($k&". "&StringLeft($folders2,15), 40,40+$m,150,20); $ins_btn[$i][$k]=GUICtrlCreateButton ("",250,40+$m,30,30,$BS_ICON) GUICtrlSetImage (-1, ".\Scripts\icons\install.ico") $auto_ins_btn[$i][$k]=GUICtrlCreateButton ("",300,40+$m,30,30,$BS_ICON) GUICtrlSetImage (-1, ".\Scripts\icons\kkk.ico") $icon[$i][$k]=GUICtrlCreateIcon(".\"&$folders&"\"&$folders2&"\icon.ico",-1,350,40+$m,40,40) $info[$i][$k]=".\"&$folders&"\"&$folders2&"\info.txt" EndIf $m += 35 $k += 1 Next EndIf $i += 1 $k=0 $m=0 Next EndFunc GUICtrlCreateTabitem (""); end tabitem definition $temp_lbl=GUICtrlCreateLabel ("label1324", 200,570,350,20) GUISetState( @SW_SHOW ) Do $msg = GUIGetMsg() For $i = 1 to 10 For $j = 1 To 10 If $msg = $ins_btn[$i][$j] Then; <========================================== Here is the problem $m += 1 GUICtrlSetData($temp_lbl,$m&" "&$i);"&$j) EndIf Next Next info_load() Until $msg = $GUI_EVENT_CLOSE Func info_load() If WinActive($mainwindow) Then $ggci = GUIGetCursorInfo($mainwindow) For $i=1 to 15 For $k=1 to 15 If $ggci[4] = $lbl[$i][$k] Then GUICtrlSetData($text[$i],FileRead($info[$i][$k], FileGetSize($info[$i][$k]))) Else ;; Mouse has left button_0 EndIf Next Next EndIf EndFunc
  4. I'm trying to make an application launcher gui for my setups. the general idea is to have a tab for every software category and a button for every application folder. I have manage so far. the problem is to assign actions for the buttons. using a two dimension array ends up in endless loop. test the code and you will see what i mean. CODE#Include <File.au3>#Include <Array.au3> #include <GuiConstants.au3> $i=0 $k=0 $m=0 $o=0 Global $ins_btn[20][20] Dim $auto_ins_btn[30][30] Dim $icon[30][30] Dim $lbl[30][30] dim $info[30][30] Dim $tab[30] Dim $text[30] $mainwindow = GUICreate("Setup CD Kyriakos", 800, 600,-1,-1,-1) $font="Comic Sans MS" GUISetFont (10, 400, 1, $font,$mainwindow) $tabmain=GUICtrlCreateTab (10,10, 780,580,$TCS_MULTILINE ) $folderListbase=_FileListToArray(".\","*.",2) If @Error=1 Then MsgBox (0,"","No Files\Folders Found.") Exit EndIf $Pos = _ArraySearch ($folderListbase, "test", 0, 0, 0, True) _ArrayDelete($folderListbase,$Pos) $Pos = _ArraySearch ($folderListbase, "Tweak", 0, 0, 0, True) _ArrayDelete($folderListbase,$Pos) $Pos = _ArraySearch ($folderListbase, "Games_small", 0, 0, 0, True) _ArrayDelete($folderListbase,$Pos) for $folders in $folderListbase ;MsgBox(1,$i,$folders) if $i<>0 Then $tab[$i]=GUICtrlCreateTabitem ($i&". "&$folders) $text[$i]=GUICtrlCreateEdit("",450,70,300,450,$ES_MULTILINE) $FileList=_FileListToArray(".\"&$folders,"*.",2) If @Error=1 Then MsgBox (0,"","No Files\Folders Found.") Exit EndIf ;_ArrayDisplay($FileList) for $folders2 in $FileList if $k<>0 Then ;$lbl[$i][$k]=GUICtrlCreateLabel ($k&". "&StringLeft($folders2,15), 40,40+$m,150,20); $ins_btn[$i][$k]=GUICtrlCreateButton ("",250,40+$m,30,30,$BS_ICON) ;GUICtrlSetImage (-1, ".\Scripts\icons\install.ico") ;$auto_ins_btn[$i][$k]=GUICtrlCreateButton ("",300,40+$m,30,30,$BS_ICON) ;GUICtrlSetImage (-1, ".\Scripts\icons\kkk.ico") ;$icon[$i][$k]=GUICtrlCreateIcon(".\"&$folders&"\"&$folders2&"\icon.ico",-1,350,40+$m,40,40) ;$info[$i][$k]=".\"&$folders&"\"&$folders2&"\info.txt" EndIf $m += 35 $k += 1 Next EndIf $i += 1 $k=0 $m=0 Next GUICtrlCreateTabitem (""); end tabitem definition $temp_lbl=GUICtrlCreateLabel ("label1324", 200,570,350,20) GUISetState( @SW_SHOW ) ;MsgBox(1,$i,$folders) Do $msg = GUIGetMsg() For $i = 1 to 10 For $j = 1 To 10 If $msg = $ins_btn[$i][$j] Then $m += 1 GUICtrlSetData($temp_lbl,$m&" "&$i);"&$j) ; <========= Here is the problem EndIf Next Next Until $msg = $GUI_EVENT_CLOSE Func info_load() If WinActive($mainwindow) Then $ggci = GUIGetCursorInfo($mainwindow) For $i=1 to 15 For $k=1 to 15 If $ggci[4] = $lbl[$i][$k] Then GUICtrlSetData($text[$i],FileRead($info[$i][$k], FileGetSize($info[$i][$k]))) Else ;; Mouse has left button_0 EndIf Next Next EndIf EndFunc This is the first time i post a massage, usually i manage it with the help of the forum and i would appreciate any help P.S. the example on http://www.autoitscript.com/forum/index.ph...hl=many+buttons DOES work mine DOES NOT. Kyriakos
×
×
  • Create New...