Помогите с StanartControls!

Модераторы: Hawk, Romeo, Absurd, DeeJayC, WinMain

Ответить
alexx
Сообщения: 116
Зарегистрирован: 02 июл 2004, 22:29
Откуда: Hamburg

Пересел с C++Builder на VC++.NET, как связать Node TreeView c Item ListBox? В Builder у Item была Data, void Pointer, можно что угодно связать. В VC++.NET этого не нашел.... Неужели ручками?
-------------
Лень - двигатель прогресса!
Аватара пользователя
Romeo
Сообщения: 3126
Зарегистрирован: 02 мар 2004, 17:25
Откуда: Крым, Севастополь
Контактная информация:

Тоже есть Data. Только использовать нужно не просто ListBox, а ListBoxEx (скажи подо что именно пишешь на Вижуале, я конкретизирую, или если этой информации достаточно, то можешь не уточнять).
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
alexx
Сообщения: 116
Зарегистрирован: 02 июл 2004, 22:29
Откуда: Hamburg

Мне нужно наоборот - pointer от Node на ListBox->Item или на свой Class.
-------------
Лень - двигатель прогресса!
Аватара пользователя
Romeo
Сообщения: 3126
Зарегистрирован: 02 мар 2004, 17:25
Откуда: Крым, Севастополь
Контактная информация:

Можно немного подробнее?
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
alexx
Сообщения: 116
Зарегистрирован: 02 июл 2004, 22:29
Откуда: Hamburg

Например для выбора активной страницы в tabControl:

PagesList заполнял именами и pointer на Object:

ComboBox1->Items->AddObject(PageControl1->Pages->Name, PageControl1->Pages);


//AddObject(AnsiString Name, TObject Aobject)


а потом активировал страницу

TComboBox *pCB = dynamic_cast<TComboBox *>(Sender);
PageControl1->ActivePage = (TTabSheet *)( PagesList->Objects[1]);


Как это осуществить в VC++? Ссылку на другой Control?
-------------
Лень - двигатель прогресса!
Аватара пользователя
Romeo
Сообщения: 3126
Зарегистрирован: 02 мар 2004, 17:25
Откуда: Крым, Севастополь
Контактная информация:

Если очень нужно именно ссылку на объект иметь, нужно воспользоваться ATL или MFC, в распоряжении которых имеются подобные объекты для работы со стандартными контролами (CComboBox, CListBox, ...). Если же не используешь никаких библиотек и пытаешься всё побороть голыми руками на Win32 API, то вместо ссылок на объекты-контролы запоминать нужно просто хындлы этих самых контролов. И логичнее, и памяти жрёт на порядок меньше :)
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
alexx
Сообщения: 116
Зарегистрирован: 02 июл 2004, 22:29
Откуда: Hamburg

Спасибо! Придётся ручками прописывать....
-------------
Лень - двигатель прогресса!
Ответить