gregaz
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Просьба ответить на пару вопросов по приведенному тестовому скрипту : Код: #include <GuiTreeView.au3> $gui= GuiCreate("TreeView_Test",500, 500) $TreeView1 = GUICtrlCreateTreeView(10, 10, 300, 400) $btUpdate = GUICtrlCreateButton ('Update', 10, 460, 80,30) $btSort= GUICtrlCreateButton ("Sort", 100,-1, '','') $BtQuit = GUICtrlCreateButton ( "Выход", 410, -1,'','') TreViewCreate(); ===> GUISetState () While 1 $msg = GUIGetMsg() Switch $msg Case $btUpdate _GUICtrlTreeView_DeleteAll($TreeView1) TreViewCreate(); ===> Case $btSort _GUICtrlTreeView_Sort($TreeView1) Case -3,$BtQuit Exit EndSwitch WEnd Func TreViewCreate() For $i=1 To 100 $TreeView2 = GUICtrlCreateTreeViewitem(Random (0, 100, 1), $TreeView1) For $j=1 to 5 $TreeView3 = GUICtrlCreateTreeViewitem(Random(0, 5, 1), $TreeView2) For $k=1 To 5 $TreeView4 = GUICtrlCreateTreeViewitem(Random(0, 5, 1), $TreeView3) Next Next Next EndFunc | 1. Как произвести обновление дерева , имеющего много веток (при повторном обновлении уже при 3-м нажатии кнопки 'Update' число хендлов несмотря на применение функции _GUICtrlTreeView_DeleteAll($TreeView1) переступает число 4096 и дальнейшее обновление не происходит ) ? Как осуществить обнуление числа хендлов перед обновлении дерева ? 2. Как осуществить сортировку последних (дочерних )граф дерева. ? При использовании ф-ии _GUICtrlTreeView_Sort сортируются только две родительских - последняя графа (дочерняя не сортируется). 3. Как обеспечить режим , когда при открывынии одной ветки дерева все остальные закрывались ? |