Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.03.27;
Скачать: [xml.tar.bz2];

Вниз

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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.5 MB
Время: 0.007 c
14-88177
JibSkeart
2003-03-10 10:26
2003.03.27
Кто подскажет более менее неплохой халявный почт. ящик ?


14-88226
Дмитрий К.К.
2003-03-12 06:33
2003.03.27
Именинники 12 марта


14-88145
kostya2000
2003-03-12 19:23
2003.03.27
Как усовершенствовать тормозную систему автомобиля!


3-87878
ddenisv
2003-03-11 13:24
2003.03.27
DBGridEh - как делать следующее?


14-88173
Lexel
2003-03-09 10:41
2003.03.27
ShellExecute (спасите пожалуйста добрые люди)





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский