Rational Robot
#1
Отправлено 01 октября 2009 - 12:50
Есть такая проблема есть TreeView , нужно открыть все доки содержащиеся в этом дереве.
Как это вообще делается ??
А то в Robote новичок
#2
Отправлено 02 октября 2009 - 06:58
Всем доброго времени суток.
Есть такая проблема есть TreeView , нужно открыть все доки содержащиеся в этом дереве.
Как это вообще делается ??
А то в Robote новичок
Предлагаю след. вариант.
1) Получите элементы вашего дерева использую функцию SQAGetChildren.
2) Для всех элементов из п.1 получите их свойства. SQAGetProperty
3) Вызовите метод Click для всех элементов с нужными вам свойствами.
Описание функций с примерами можно посмотреть в документации.
#3
Отправлено 05 октября 2009 - 07:33
#4
Отправлено 05 октября 2009 - 07:50
Что вы понимаете под словом раскрыть? Зачем это нужно делать? Функция робота найдет все дочерние объекта, а далее в цикле по всем объектам открывайте их.тут дело в том что нужно сначала раскрыть все дерево. Вот как это сделать просто пройти по всем элементам и отркыть их.
#5
Отправлено 05 октября 2009 - 08:10
Можно так сделать? И он вложенные т.е дочерние элементы откроет ?
For I = 1 To (?Количество нодов в дереве?) TreeView DblClick "Name=Tree;\;ItemText=" + Nodes(i).Text, """ Next I
(?Количество нодов в дереве?) - Как их получить
#6
Отправлено 05 октября 2009 - 09:16
Я ж вам писал "Получите элементы вашего дерева использую функцию SQAGetChildren."(?Количество нодов в дереве?) - Как их получить
Эта функция вовращает массив элементов. Кол-во элементов в массиве определяет (?Количество нодов в дереве?).
Цикл следующий:
For n = 0 to UBound(ChildRec) -- где ChildRec ваш массив который вернет SQAGetChildren
#7
Отправлено 05 октября 2009 - 09:27
Сделал как написано в справке вернул все равно 1 . Пробовал делать так
Dim Result As VAriant Dim ChildRec() As String Result = SqagetChildren ("Form1.Tree",ChildRec)
Может я его как то не так вызываю ??
#8
Отправлено 05 октября 2009 - 09:35
Просто дело в тотм что SqaGetChildren или я тупой или что то не так происходит, но он всегда возращает 1.
Сделал как написано в справке вернул все равно 1 . Пробовал делать такDim Result As VAriant Dim ChildRec() As String Result = SqagetChildren ("Form1.Tree",ChildRec)
Может я его как то не так вызываю ??
Это result = 1 - оэначает что функция отработа без ошибок.
Массив возвращаемых дочерних объектов(out параметр) = ChildRec, с ним и работайте;)
Что возвращает UBound(ChildRec)?
#9
Отправлено 05 октября 2009 - 09:48
For n = 0 to UBound(ChildRec) TreeView DblClick , "Name=Tree;\;Itemtext=" , "" Next
А как теперь получить текущий элемент и надо его проверять что он вложенный или нет ?
#10
Отправлено 05 октября 2009 - 09:59
Так уже хорошо
For n = 0 to UBound(ChildRec) TreeView DblClick , "Name=Tree;\;Itemtext=" , "" Next
А как теперь получить текущий элемент и надо его проверять что он вложенный или нет ?
Получайте св-ва элемента массива:
SQAGetProperty ChildRec(n), "св-во", property (в приведенном вами примере, я так понимаю что вам нужно св-во="Itemtext")
Зачем проверять если он итак вложенный?
#11
Отправлено 05 октября 2009 - 10:12
For n = 0 to UBound(ChildRec) SQAGetProperty (ChildRec(n),"Itemtext", Value) TreeView DblClick , "Name=Tree;\;Itemtext=" & Value, "" Next
#12
Отправлено 05 октября 2009 - 11:05
Что-то вродеТо есть, как я понимаю, должно получиться что то вроде
For n = 0 to UBound(ChildRec) SQAGetProperty (ChildRec(n),"Itemtext", Value) TreeView DblClick , "Name=Tree;\;Itemtext=" & Value, "" Next
#13
Отправлено 08 октября 2009 - 07:41
TreeView DblClick , "Name=Tree;\;Itemtext=" & Value, ""
То он говорит что не может найти элемент дело в том что
в строке присутсвуют символы "\" , которые разделяют корневой элемент и вложенный , а надо что бы было Корень -> Вложение -> Вложение.
Как заменить \ на -> ??
#14
Отправлено 09 октября 2009 - 11:16
А еще такой момент если получить FullPath Вложенного элемента ...и потом написать
TreeView DblClick , "Name=Tree;\;Itemtext=" & Value, ""
То он говорит что не может найти элемент дело в том что
в строке присутсвуют символы "\" , которые разделяют корневой элемент и вложенный , а надо что бы было Корень -> Вложение -> Вложение.
Как заменить \ на -> ??
Попробуйте получить и записать в Value св-во FullRecognition.
И потом вызвать
TreeView DblClick , Value, ""
Сложно просто так говорить надо пробовать разные методы:)
Количество пользователей, читающих эту тему: 0
0 пользователей, 0 гостей, 0 анонимных