Имя: Пароль:
1C
 
Выделение строки в дереве
0 assassin
 
21.11.08
09:56
Вот написал процедурку которая выделяла бы в дереве нужную строку:

ЭлементыФормы.ДеревоРасписаний.ВыделенныеСтроки.Очистить();

   Для Каждого Строка Из ДеревоРасписаний.Строки Цикл
       Для Каждого ПодСтрока Из Строка.Строки Цикл
           Для Каждого ПодПодСтрока Из ПодСтрока.Строки Цикл
               Если ПодПодСтрока.Ссылка = ЭтотОбъект.Расписание Тогда
                   ЭлементыФормы.ДеревоРасписаний.Развернуть(ПодПодСтрока.Родитель.Родитель);
                   ЭлементыФормы.ДеревоРасписаний.Развернуть(ПодПодСтрока.Родитель);
                   ЭлементыФормы.ДеревоРасписаний.Развернуть(ПодПодСтрока);
                   ЭлементыФормы.ДеревоРасписаний.ВыделенныеСтроки.Очистить();
                   ЭлементыФормы.ДеревоРасписаний.ВыделенныеСтроки.Добавить(ПодПодСтрока);
                   Перейти ~Метка;
               КонецЕсли;
           КонецЦикла;
       КонецЦикла;
   КонецЦикла;
   ~Метка:

Проблема в том, что помимо той строки, которую нужно выделить, почемуто обязательно выделяется самая первая строка-группа

Иными словами вместо этого: http://s46.radikal.ru/i113/0811/e1/b70763ce9784.jpg
получается вот это: http://s55.radikal.ru/i150/0811/9d/9c6e1f77d724.jpg

Помогите плз разобраться...
1 Mitriy
 
21.11.08
09:58
гы...
2 zbv
 
21.11.08
09:59
Сейчас за это:

"Перейти ~Метка;"

тебе много насоветуют. Готовься. :))
3 Mitriy
 
21.11.08
10:00
и вааще про метод Найти чо-нить слышал?
4 butterbean
 
21.11.08
10:00
(0) используй НайтиСтроки вместо циклов
5 assassin
 
21.11.08
10:00
(2) да знаю что плохо так и надо типа Прервать, лалал... поросто счас не изза этого проблема...
6 butterbean
 
21.11.08
10:00
(4) + или Найти
7 Mitriy
 
21.11.08
10:01
(4) ну да :)
8 assassin
 
21.11.08
10:02
(3), (4) дак мну надо именно в элементе формы выделить
9 butterbean
 
21.11.08
10:05
(8)

ЭлементыФормы.ДеревоРасписаний.ВыделенныеСтроки.Очистить();
ПодПодСтрока= ДеревоРасписаний.Найти(ЭтотОбъект.Расписание,"Ссылка",Истина);
ЭлементыФормы.ДеревоРасписаний.Развернуть(ПодПодСтрока);
ЭлементыФормы.ДеревоРасписаний.ВыделенныеСтроки.Добавить(ПодПодСтрока);
10 butterbean
 
21.11.08
10:06
(9) + или можно
ЭлементыФормы.ДеревоРасписаний.ТекущаяСтрока = ПодПодСтрока
11 assassin
 
21.11.08
10:11
(10) спасибо заработало =)
вариант (9) не сработал, а вот (10) решил проблему =)

butterbean.Респект = butterbean.Респект + 1 =)