Дерево по одному файлу в станд. browse
Добавлено: 06 Февраль 2020, 13:04
				
				У меня есть файл который хорошо отображается  в  SingleFileTree как переделать этот файл для browse
			Место общения программистов, форум разработчиков БД на Clarion
https://www.forum.clarionlife.net/
А зачем? Автоматически броуз не сможет правильно отобразить дерево. Нужна предварительная подготовка. Либо использовать скульную вьюху. Либо собирать очередь вручную по алгоритму SingleFileTree, и использовать, видимо, IMDD для полноценного броуза. И, главное, зачем? Что не так с SingleFileTree?Larion писал(а): 06 Февраль 2020, 13:04 У меня есть файл который хорошо отображается в SingleFileTree как переделать этот файл для browse
Код: Выделить всё
setcursor(CURSOR:Wait)
if ~LOC:TreeExpandAll
  do TSF3:ExpandAll
  LOC:TreeExpandAll = 1
end  
i# = TSF3:CurrentChoice
loop
  i# += 1
  get(Queue:SingleFileTree,i#)
  if errorcode()=30                     ! Конец очереди, начинаем с первой записи
    i# = 0
    cycle
  end
  if i#=TSF3:CurrentChoice              ! Прошли круг и ничего не нашли
    break
  end
  if instring(clip(upper(LOC:SearchString)),upper(Queue:SingleFileTree.TSF3:Display),1,1)
    break
  end  
end  
setcursor()
if i#<>TSF3:CurrentChoice
  select(?FileTree,i#)
  post(EVENT:NewSelection,?FileTree)
else  
  select(?FileTree,i#)
end
Явно переводчик нужен.Larion писал(а): 06 Февраль 2020, 16:12 Спасибо выручили. В моём случае найденных строк может быть много я заряжаю Queue.
Из Queue я встану SingleFileTree с Вашей подсказкой.
Да фильтр это было замечательно. Можно рассмотреть вариант раскрыть несколько веток полностью и искать в них.Есть задачка (пока на обсуждении) организовать фильтр по дереву. Отображать только ветки, имеющие подстроку поиска. На первый взгляд сложная задача для данного шаблона.