powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Помогите разобраться с TVirtualTreeView!
11 сообщений из 11, страница 1 из 1
Помогите разобраться с TVirtualTreeView!
    #32583282
DжеFF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кто пользовался подскажите ... Как запихнуть в tmpNode->Data указатель на собственную структуру .. Не могу разораться уже второй день.... Аж самому не приятно .. Заранее спасибО!
...
Рейтинг: 0 / 0
Помогите разобраться с TVirtualTreeView!
    #32583305
Фотография JibSkeart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а это стандартная компонента ?


 ш
(';')
(V),(V),,
Код: plaintext
 JS 
...
Рейтинг: 0 / 0
Помогите разобраться с TVirtualTreeView!
    #32583351
DжеFF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нет ... Не стандартная ... Просто интересуюсь может кто с ней сталкивался ... Работал там .. )) ну я не знаю , короче помощь по ней нужна . )
...
Рейтинг: 0 / 0
Помогите разобраться с TVirtualTreeView!
    #32583357
Фотография JibSkeart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тогда не знаю ...
я работал только со стандартным .


 ш
(';')
(V),(V),,
Код: plaintext
 JS 
...
Рейтинг: 0 / 0
Помогите разобраться с TVirtualTreeView!
    #32583415
Фотография JibSkeart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
обрати внимаение как я в стандартный TreeView
добовляю обьект , может быть там по аналогии ?

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
  TTreeNode * TreeNode;
  TreeView1->Items->BeginUpdate();
  TreeNode=TreeView1->Items->AddChildObject(
                                  Node ,
                                  "Name" ,
                                  Pointer(ofData));  //  добовляю всяку муть :)
   TreeNode->ImageIndex =  1 ;
   TreeNode->SelectedIndex =  2 ;
   TreeView1->Items->AddChildObject(TreeNode , "" , NULL);
   TreeView1->Items->EndUpdate();




 ш
(';')
(V),(V),,
Код: plaintext
 JS 
...
Рейтинг: 0 / 0
Помогите разобраться с TVirtualTreeView!
    #32583434
DжеFF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Так я тоже умею ))

Нет ... Аналогия разумееться есть ... Но подход обсолютно разный ... Вместо свойства Text В TVirtualTreeNode имееться свойство Data ... как раз то с чем я не могу разобраться ... Для него ты создешь класс (структуру)
...
Рейтинг: 0 / 0
Помогите разобраться с TVirtualTreeView!
    #32583458
Фотография JibSkeart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну тогды ничем уже немогу помочь ,
осталось только хелпы тебе ентой компоненты надыбать ,
уж там должны быть примеры .


 ш
(';')
(V),(V),,
Код: plaintext
 JS 
...
Рейтинг: 0 / 0
Помогите разобраться с TVirtualTreeView!
    #32583519
roman10
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Залезь в .h файл и посмотри как объявлен член TVirtualTreeView::Data. Если это просто указатель (нетепизированный, скорее всего), то тогда так:

Код: plaintext
tmpNode->Data = &MyStructure;
...
Рейтинг: 0 / 0
Помогите разобраться с TVirtualTreeView!
    #32583696
Фотография CEMb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ааа... это поди тот, который на ходу составляется?
Полезный при огромном числе строк?
...
Рейтинг: 0 / 0
Помогите разобраться с TVirtualTreeView!
    #32583885
DжеFF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ага! )) Создание 1000000 строк меньше чем за 1 сек. ))

Что в этом коде может быть не так ... почему отказываеться работать...

class TMyObject
{
public:
int obj_id;
//TObjectType obj_type;
};

class TNamedObject: public TMyObject
{
public:
AnsiString obj_name;
};

struct TNodeData {
TMyObject Data;
} *PNodeData;

// Begin
for (int ii=0;ii<3;ii++)
{
tmpNode = Tree->AddChild(NULL);
TNamedObject *root_obj = new TNamedObject;
root_obj->obj_id = -1;
root_obj->obj_name = "ЧЧЧЧЧЧЧ";
// Приведение типов
dynamic_cast <PNodeData>(Tree->GetNodeData(tmpNode));
// или
((PNodeData*)Tree->GetNodeData(tmpNode))
}
//end.

Выдают ошибку о том что нифига не могут найти такой класс...
...
Рейтинг: 0 / 0
Помогите разобраться с TVirtualTreeView!
    #32584378
Фотография JibSkeart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если смотреть по аналогии , то скорее надо дейсвовать так ..
Код: plaintext
1.
2.
3.
4.
if (dynamic_cast<TControl *> (Sender))
{
   dynamic_cast<TControl&> (*Sender)->Color=clWhite;
}

((PNodeData*)Tree->GetNodeData(tmpNode))

а вообщето будет наверное вернее так

чтото = (PNodeData*)Tree->GetNodeData(tmpNode);

или

dynamic_cast<PNodeData&> (*Tree->GetNodeData(tmpNode))->Data= my_data;

ну вобчем , попробуй , хотя не гарантирую на правельность



 ш
(';')
(V),(V),,
Код: plaintext
 JS 
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Помогите разобраться с TVirtualTreeView!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]