SysTreeView32 message-s

Общие вопросы, не зависящие от языка реализации.

Модераторы: Duncon, Hawk, Romeo, Eugie

Аватара пользователя
Duncon
Сообщения: 2085
Зарегистрирован: 10 окт 2004, 14:11
Откуда: Питер
Контактная информация:

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

И еще, а каким образом обызно считываются данные о том что элемент был выбран или не выбран (мне никогда не довелось работать подобным tree), грешу на iSelectedImage
Аватара пользователя
Romeo
Сообщения: 3126
Зарегистрирован: 02 мар 2004, 17:25
Откуда: Крым, Севастополь
Контактная информация:

Кстати, вот этот код ничего не делает:

Код: Выделить всё

hItem := hItem;
Так как, внутри блока with поля структуры перекрывают наружные переменные, если их имена полностью совпадают. Могу, конечно, ошибаться, давно на Delphi не писал. Предлагаю тебе проверить, например в отладке. Мне кажется, что приведённый выше код эквивалентен:

Код: Выделить всё

Item.hItem := Item.hItem;
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
Аватара пользователя
Duncon
Сообщения: 2085
Зарегистрирован: 10 окт 2004, 14:11
Откуда: Питер
Контактная информация:

По идее это ссылка на место в структуре, хандл (хотя так и есть, если подумать)
Значение как раз возьмется от сюда..
hItem := HTREEITEM(SendMessage(_handle, TVM_GETNEXTITEM, TVGN_ROOT, 0));
with Item do begin
hItem := hItem;
Ответить