Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 03.12.2007, 20:03   #1
Cyn4uk
Пользователь
 
Регистрация: 25.11.2007
Сообщений: 56
По умолчанию вопрос по TreeView

Как сделать чтобы у меня не все дерево было развернуто при открытии формы (не все категории), а только часть? Т.е. только необходимое мне было развернуто автоматически, остальное при надобности разворачивалось вручную кликом.

В самом объекте есть свойство чтобы было все развернуто либо все свернуто, но это не подходит.

Заранее спасибо!
Cyn4uk вне форума
Старый 03.12.2007, 20:25   #2
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

А как же Expand method (TTreeNode) и Collapse method (TTreeNode)?
mihali4 вне форума
Старый 03.12.2007, 20:39   #3
Cyn4uk
Пользователь
 
Регистрация: 25.11.2007
Сообщений: 56
По умолчанию

Цитата:
Сообщение от mihali4 Посмотреть сообщение
А как же Expand method (TTreeNode) и Collapse method (TTreeNode)?

Не понял немного... Как я уже писал, могу сделать сейчас только FullExpand.

А как частично развернуть дерево, вот этого и не знаю.

Хэлп не пашет в связи с тем что виста стоит =(
Cyn4uk вне форума
Старый 03.12.2007, 20:57   #4
Sibedir
Тот ещё
Старожил
 
Аватар для Sibedir
 
Регистрация: 14.11.2007
Сообщений: 2,242
По умолчанию

Может быть это поможет:
TreeView.zip
Sibedir вне форума
Старый 03.12.2007, 20:57   #5
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

TTreeNode - это то, из чего состоит дерево, то есть это - его ветви. А у них есть персональные методы для сворачивания и разворачивания.
А что, в Висте файл хэлпа вручную тоже нельзя открыть?
mihali4 вне форума
Старый 03.12.2007, 21:07   #6
Cyn4uk
Пользователь
 
Регистрация: 25.11.2007
Сообщений: 56
По умолчанию

Цитата:
Сообщение от Sibedir Посмотреть сообщение
Может быть это поможет:
Вложение 1820
Спасибо, хороший пример, все понял =)
Cyn4uk вне форума
Старый 03.12.2007, 21:11   #7
Cyn4uk
Пользователь
 
Регистрация: 25.11.2007
Сообщений: 56
По умолчанию

Цитата:
Сообщение от mihali4 Посмотреть сообщение
А что, в Висте файл хэлпа вручную тоже нельзя открыть?
Справка Windows (WinHlp32.exe) – это программа, предоставляющая справочную информацию и включенная в версии операционной системы Microsoft Windows, начиная с Microsoft Windows 3.1. Однако справка Windows практически не обновлялась для многих выпусков операционных систем и уже не соответствует стандартам корпорации Майкрософт. Поэтому, начиная с выпуска ОС Windows Vista, справка Windows не будет поставляться в составе Windows. Для просмотра 32-разрядных файлов HLP необходимо загрузить и установить программу (WinHlp32.exe) из центра загрузки корпорации Майкрософт.


Хорошо что у меня лицензионка, а то так бы сейчас не загрузил установщик хелпа... Сейчас хоть можно просматривать хелпы...
Cyn4uk вне форума
Старый 03.12.2007, 21:46   #8
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Посмотрел пример.
Второй цикл (while) у Button2 не нужен, а в первом - при нахождении итемса нужного номера достаточно сделать
TreeView1.Selected:= TreeView1.Items [i] и все.
Цитата:
Сейчас хоть можно просматривать хелпы...
Правильное решение приняли. Теперь многое станет гораздо проще.
mihali4 вне форума
Старый 04.12.2007, 05:38   #9
Sibedir
Тот ещё
Старожил
 
Аватар для Sibedir
 
Регистрация: 14.11.2007
Сообщений: 2,242
По умолчанию

Цитата:
Второй цикл (while) у Button2 не нужен, а в первом - при нахождении итемса нужного номера достаточно сделать
TreeView1.Selected:= TreeView1.Items [i] и все
Все так. Вот код:
Код:
var
  i: Integer;
begin
  for i := 0 to TreeView1.Items.Count - 1 do begin
    if TreeView1.Items [i].Text = Edit1.Text then begin
      TreeView1.Selected := TreeView1.Items [i];
      TreeView1.Selected.Expand (False);
      Break;
    end;
  end;
end;
Sibedir вне форума
Старый 23.12.2007, 21:15   #10
Cyn4uk
Пользователь
 
Регистрация: 25.11.2007
Сообщений: 56
По умолчанию

Я в итоге сделал куда проще:

т.к. мне нужно развернуть только конкретные ветви, несколько штук, я вставил код

tv1.Items.Item[i].Expand(false);

на каждую i'ю ветвь которую мне нужно развернуть.

перед этим делаем только tv1.FullCollapse
Cyn4uk вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
TreeView и БД Constellation БД в Delphi 12 27.09.2008 15:22
TreeView _SERGEYX_ Общие вопросы Delphi 1 01.09.2008 17:29
TreeView GetNodeAt() ?? Родион Компоненты Delphi 1 16.05.2008 16:09
Treeview forzi Помощь студентам 4 04.05.2008 23:50