Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.03.27;
Скачать: CL | DM;

Вниз

TreeView   Найти похожие ветки 

 
sau ©   (2003-03-17 10:23) [0]

Добрый день!
Подскажите пожалуйста как сделать в TreeView CheckBox для того, чтобы можно было отметить нужные ветки...
За ранее спасибо.


 
y-soft ©   (2003-03-17 11:02) [1]

А готовые компоненты Вам не подходят?
Если нет, то перехватывайте клики мыши, определяйте узел и его область и меняйте StateImage


 
Smok_er   (2003-03-17 11:03) [2]

Я тут глюк обнаружил...
Если stateindex = 0 то в treeview эта иконка не отображается :(
Может кто сталкивался с этой проблемой?


 
sau ©   (2003-03-17 11:04) [3]

>y-soft © А какие готовые компоненты лучше использовать? Желательно бесплатные... :-)


 
Smok_er   (2003-03-17 11:06) [4]

virtual treeview - куча возможностей, отличная поддержка через мэиллисты, бесплатность!


 
sau ©   (2003-03-17 11:14) [5]

> Smok_er
А где взять virtual treeview?


 
Smok_er   (2003-03-17 11:16) [6]

Извини за наезд, но удивительно ленивый народ пошел... Неужели трудно набрать в поисковике фразу и нажать ОК?

http://www.google.com/search?sourceid=navclient&ie=UTF-8&oe=UTF-8&q=virtual+treeview


 
y-soft ©   (2003-03-17 11:22) [7]

Дайте мыло или пришлите мне письмо - кину


 
y-soft ©   (2003-03-17 11:24) [8]

VirtualTreeview вещь хорошая, но тяжелая, к тому же не потомок стандартного TTreeView


 
sau ©   (2003-03-17 11:26) [9]

> Smok_er
Спасибо.


 
sau ©   (2003-03-17 11:31) [10]

> y-soft ©
e-mail: sau@kineshma.ru
А чем же тогда лучше воспользоваться? Спасибо...


 
Smok_er   (2003-03-17 11:42) [11]

Если нужно просто щелкать по чекбоксам, то естественно

>>y-soft © (17.03.03 11:02)

>> перехватывайте клики мыши, определяйте узел и его область и меняйте StateImage

Однозначно!



>>y-soft © (17.03.03 11:24)
>>VirtualTreeview вещь хорошая, но тяжелая, к тому же не потомок >>стандартного TTreeView

Ну и хорошо, избавился от глюков последнего



 
y-soft ©   (2003-03-17 11:48) [12]

>sau © (17.03.03 11:31)
Выслал свою реализацию


 
y-soft ©   (2003-03-17 11:50) [13]

>Smok_er (17.03.03 11:42)
Я в том смысле, что "зачем из пушки по воробьям..."


 
sau ©   (2003-03-17 11:54) [14]

> y-soft ©
Спасибо, получил, установил...


 
Smok_er   (2003-03-17 11:55) [15]

>Я в том смысле, что "зачем из пушки по воробьям..."

Полностью согласен. И вообще, если можно обойтись без компонента стороннего разработчика, то надо так и делать. А то потом при установке, переустановке проблемы обеспечены :(


 
y-soft ©   (2003-03-17 11:57) [16]

>Smok_er (17.03.03 11:55)
Имею такой горький опыт. С некоторых пор использую только стандартный VCL и собственные наработки


 
Smok_er   (2003-03-17 12:14) [17]

y-soft © (17.03.03 11:57)
>Smok_er (17.03.03 11:55)
Имею такой горький опыт. С некоторых пор использую только стандартный VCL и собственные наработки



Мда, у меня такого опыта тоже больше чем достаточно. И все равно бывает "обжигаюсь"...


 
MBo ©   (2003-03-17 12:59) [18]

procedure TForm1.FormCreate(Sender: TObject);
begin
SetWindowLong(TreeView1.Handle, GWL_STYLE,
GetWindowLong(TreeView1.Handle, GWL_STYLE) or TVS_CHECKBOXES);
end;


 
Smok_er   (2003-03-17 13:07) [19]

а как обрабатывать потом?


 
MBo ©   (2003-03-17 13:09) [20]

>Smok_er
Если поповоду моего поста, то
TVM_GETITEM


 
sau ©   (2003-03-17 13:15) [21]

Я тоже еще ни разу не использовал сторонние компоненты именно по этой причине.

> MBo А как объявить TVS_CHECKBOXES?


 
MBo ©   (2003-03-17 13:16) [22]

uses ...commctrl


 
y-soft ©   (2003-03-17 13:36) [23]

TVS_CHECKBOXES
Version 4.70. Enables check boxes for items in a tree-view control. A check box is displayed only if an image is associated with the item. When set to this style, the control effectively uses DrawFrameControl to create and set a state image list containing two images. State image 1 is the unchecked box and state image 2 is the checked box. Setting the state image to zero removes the check box altogether. For more information, see Working with state image indexes.
Version 5.80. Displays a check box even if no image is associated with the item.

Note Once a tree-view control is created with this style, the style cannot be removed. Instead, you must destroy the control and create a new one in its place. Destroying the tree-view control does not destroy the check box state image list. You must destroy it explicitly. Get the handle to the state image list by sending the tree-view control a TVM_GETIMAGELIST message. Then destroy the image list with ImageList_Destroy.

If you want to use this style, you must set the TVS_CHECKBOXES style with SetWindowLong after you create the treeview control, and before you populate the tree. Otherwise, the checkboxes might appear unchecked, depending on timing issues.

То, что я Вам прислал несколько более функционально


 
sau ©   (2003-03-17 14:58) [24]

Большое спасибо y-soft. Действительно, присланное Вами мне понравилось больше. Буду использовать...


 
y-soft ©   (2003-03-17 15:00) [25]

>sau © (17.03.03 14:58)
Всегда рад помочь пытливым и ищущим :)


 
Smok_er   (2003-03-17 15:30) [26]

Может и мне поможешь?

http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1047715812&n=0

Я буду очень признателен...


 
y-soft ©   (2003-03-17 15:44) [27]

>Smok_er (17.03.03 15:30)

Я с таким не сталкивался, сегодня уже вряд ли помогу - идти надо:(


 
Smok_er   (2003-03-17 15:54) [28]

да просто достаточно попробовать это у себя...
сваять такой проект - дело 3-х минут максимум



Страницы: 1 вся ветка

Текущий архив: 2003.03.27;
Скачать: CL | DM;

Наверх




Память: 0.53 MB
Время: 0.018 c
14-88193
Ahmad K
2003-03-09 13:59
2003.03.27
Автомотизация тестирования прог...


1-87921
San
2003-03-13 17:39
2003.03.27
CHARSET


1-88063
Mystex
2003-03-15 15:51
2003.03.27
---|Ветка была без названия|---


1-87980
vanek8
2003-03-18 07:59
2003.03.27
Отчеты


4-88302
Евгений Тарабановский
2003-01-30 15:03
2003.03.27
Скроллинг