Как разворачивать ShellTreeView одним щелчком?

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Как разворачивать ShellTreeView одним щелчком?

Сообщение McLion » 17.05.2015 23:51:19

Как разворачивать ShellTreeView одним щелчком мыши? Кто подскажет?

Спасибо!
Аватара пользователя
McLion
постоялец
 
Сообщения: 332
Зарегистрирован: 06.02.2015 18:41:00

Re: Как разворачивать ShellTreeView одним щелчком?

Сообщение resident » 18.05.2015 00:06:53

Код: Выделить всё
ShellTreeView1.FullExpand;   
resident
энтузиаст
 
Сообщения: 605
Зарегистрирован: 13.03.2013 16:58:51

Re: Как разворачивать ShellTreeView одним щелчком?

Сообщение McLion » 18.05.2015 12:00:36

resident писал(а):
Код: Выделить всё
ShellTreeView1.FullExpand;   


Вообще то я имел ввиду не все за раз, а отдельные папки разворачивать одним щелчком. :mrgreen:
Аватара пользователя
McLion
постоялец
 
Сообщения: 332
Зарегистрирован: 06.02.2015 18:41:00

Re: Как разворачивать ShellTreeView одним щелчком?

Сообщение Лекс Айрин » 18.05.2015 12:10:40

McLion, нужно обработать событие onClick для ShellTreeView

Код: Выделить всё
if MainForm.ShellTreeView1.Selected.Expanded=true
   then MainForm.ShellTreeView1.Selected.Expanded:=false
   else  MainForm.ShellTreeView1.Selected.Expanded:=true
Последний раз редактировалось Лекс Айрин 18.05.2015 12:29:03, всего редактировалось 1 раз.
Аватара пользователя
Лекс Айрин
долгожитель
 
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград

Re: Как разворачивать ShellTreeView одним щелчком?

Сообщение McLion » 18.05.2015 12:18:57

Лекс Айрин писал(а):McLion, нужно обработать событие onClick для ShellTreeView


Да я там вообще то, только не пойму что там делать... все на свете перепробовал но никак. Индекс как будто с неба берется, никакой логики... как будто Random за ним стоит.

Код: Выделить всё
ShellTreeView1.Items.Item[ShellTreeView1.Selected.SelectedIndex].Expanded := True; 
ShellTreeView1.Items.Item[ShellTreeView1.Selected.Index].Expanded := True; 
Аватара пользователя
McLion
постоялец
 
Сообщения: 332
Зарегистрирован: 06.02.2015 18:41:00

Re: Как разворачивать ShellTreeView одним щелчком?

Сообщение Лекс Айрин » 18.05.2015 12:30:37

Все четко. Никаких особых проблем. Код выше.
Аватара пользователя
Лекс Айрин
долгожитель
 
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград

Re: Как разворачивать ShellTreeView одним щелчком?

Сообщение McLion » 18.05.2015 12:42:02

Лекс Айрин писал(а):Все четко. Никаких особых проблем. Код выше.


Не, у меня он не работает, но вот это вроде работает!

Код: Выделить всё
  if ShellTreeView1.Selected.Expanded then
    ShellTreeView1.Selected.Expanded := False
  else ShellTreeView1.Selected.Expanded := True;
Аватара пользователя
McLion
постоялец
 
Сообщения: 332
Зарегистрирован: 06.02.2015 18:41:00

Re: Как разворачивать ShellTreeView одним щелчком?

Сообщение Лекс Айрин » 18.05.2015 12:48:10

McLion, странно, у меня работает и указанный мною вариант. впрочем, разница несущественна. А насчет ного, что непонятно откуда индекс берется... Так для таких случаев и нужен пункт Selected
Аватара пользователя
Лекс Айрин
долгожитель
 
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград

Re: Как разворачивать ShellTreeView одним щелчком?

Сообщение McLion » 18.05.2015 12:54:06

Лекс Айрин писал(а):McLion, странно, у меня работает и указанный мною вариант. впрочем, разница несущественна. А насчет ного, что непонятно откуда индекс берется... Так для таких случаев и нужен пункт Selected


Ооо... я твой код не видел... он только сейчас появился... прикольно, форум глючит.

Спасибо за помощь! А в ShellListView сильно понимаешь?
Аватара пользователя
McLion
постоялец
 
Сообщения: 332
Зарегистрирован: 06.02.2015 18:41:00

Re: Как разворачивать ShellTreeView одним щелчком?

Сообщение Лекс Айрин » 18.05.2015 13:27:08

McLion писал(а):А в ShellListView сильно понимаешь?


не то что бы... я в свое время долго курил TreeView. Могу попытаться покурить и это.
А то, что код не видел... видимо, ты выложил тогда, когда я правил пост, добавляя его.
Аватара пользователя
Лекс Айрин
долгожитель
 
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград

Re: Как разворачивать ShellTreeView одним щелчком?

Сообщение McLion » 18.05.2015 13:33:21

Лекс Айрин писал(а):
McLion писал(а):А в ShellListView сильно понимаешь?


не то что бы... я в свое время долго курил TreeView. Могу попытаться покурить и это.


Я уже тоже намучился, особенно с иконками...
Помощь просто в лазарусе плохая, ничего не найдешь, а если и найдешь - умнее не станешь!
Аватара пользователя
McLion
постоялец
 
Сообщения: 332
Зарегистрирован: 06.02.2015 18:41:00

Re: Как разворачивать ShellTreeView одним щелчком?

Сообщение Лекс Айрин » 18.05.2015 13:35:57

McLion писал(а):Помощь просто в лазарусе плохая, ничего не найдешь, а если и найдешь - умнее не станешь!


Гугл и яндекс рулят. В крайнем случае, смотришь исходники. При наличии качественных исходников хелп не особо нужен.
Аватара пользователя
Лекс Айрин
долгожитель
 
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград

Re: Как разворачивать ShellTreeView одним щелчком?

Сообщение McLion » 18.05.2015 13:37:25

Лекс Айрин писал(а):
McLion писал(а):Помощь просто в лазарусе плохая, ничего не найдешь, а если и найдешь - умнее не станешь!


Гугл и яндекс рулят. В крайнем случае, смотришь исходники. При наличии качественных исходников хелп не особо нужен.



Как можно из кода в нужный исходник (uses) прыгнуть?
Аватара пользователя
McLion
постоялец
 
Сообщения: 332
Зарегистрирован: 06.02.2015 18:41:00

Re: Как разворачивать ShellTreeView одним щелчком?

Сообщение Лекс Айрин » 18.05.2015 13:45:15

Через подручное меню. кликаешь на функцию/переменную/класс/модуль чтобы текстовый курсор был на имени и выбираешь пункт найти определение в подручном (контекстном) меню.
Аватара пользователя
Лекс Айрин
долгожитель
 
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 223

Рейтинг@Mail.ru
cron