Отправляет email-рассылки с помощью сервиса Sendsay

Программирование. Форум !!!

За 2005-10-05

Re: не визуальное использование TCustomTreeView

Здравствуйте, Serger.

Tuesday, October 4, 2005, 5:05:49 AM, you wrote:

S> Здравствуйте, Почтовый форум по программированию,

S> Более глобально хотелось бы иметь нормальный класс для работы с
S> деревьями.
S> В Delphi вроде только TCustomTreeView имеется - других не знаю. (
Несовсем понял насчет "других" - а TTreeView? Если нужен именно
невизуальный класс типа "дерева", то скройте компонент и все дела. Или
породите от TCustomTreeView свой компонент, хотя и он будет
визуальным.

S> Сам TCustomTreeView - это, как я понял лишь контейнер.
S> Отсюда следует, что он в принципе не нужен.
Это абстрактный класс, правильнее сказать, от которого происходят
другие "деревянные" классы. И для них он нужен, как воздух.:)

S> Используем TTreeNodes:

S> tree := TTreeNodes.Create(nil);
S> tree.GetFirstNode; // Тут вылетает Access Violation

S> ..беда!!!

S> т.е. без TCustomTreeView никуда!!! (
Еще бы - ветку дерева нужно к дереву лепить, а не к nil.

S> Делаю так..

S> treeView := TCustomTreeView.CreateParented((AOwner as TForm).Handle);

S> tree := TTreeNodes.Create(treeView);

S> убиваю:
S> treeView.Free; // Тут я надеюсь, что tree потом тож убъётся(вроде логично)
Сильно наворочено! Сделайте проще, как я говорил - или воспользуйтесь
TTreeView, или создайте свою структуру данных, основанную на бинарных
деревьях (без всяких классов).


S> Вот такой изврат!..
S> Отсюда выводы..
S> Мож я извращенец или мазохист?..
Чё-то выводы какие-то....-)))))) Впрочем, если это о программинге, то
мы все тут такие.-))))))))

S> ps:
S> 1. TCustomTreeView.Create(AOwner as TForm) тоже так же Access violation!
Да, ведь это абстрактный класс.

   Вадим Шешунов 2005-10-05 23:47:37 (#449699)

Re[2]: и вновь DC...

Glad to greet, Шматко.

Monday, October 03, 2005, 12:54:57 PM, you seem to have written:

ШАА> Создавал с помощью CreateCompatibleDC() на основе целевого. В результате
ШАА> получался контекст размером 1х1. Затем с помощью CreateCompatibleBitmap()

ШАА> создавал "поверхность" нужного размера и выбирал во внеэкранном контексте

ШАА> SelectObject(). Всё должно работать. Только не забыть поосвобождать всё,

ШАА> когда не нужно будет.

Я не для того контекста вызывал CreateCompatibleBitmap(переплодил их
при попытках разобраться). Спасибо!

   2005-10-05 23:46:24 (#449697)

не визуальное использование TCustomTreeView

Здравствуйте, Почтовый форум по программированию,

Более глобально хотелось бы иметь нормальный класс для работы с
деревьями.
В Delphi вроде только TCustomTreeView имеется - других не знаю. (

Сам TCustomTreeView - это, как я понял лишь контейнер.
Отсюда следует, что он в принципе не нужен.
Используем TTreeNodes:

tree := TTreeNodes.Create(nil);
tree.GetFirstNode; // Тут вылетает Access Violation

..беда!!!

т.е. без TCustomTreeView никуда!!! (

Делаю так..

treeView := TCustomTreeView.CreateParented((AOwner as TForm).Handle);

tree := TTreeNodes.Create(treeView);

убиваю:
treeView.Free; // Тут я надеюсь, что tree потом тоже убъётся(вроде логично)


Вот такой изврат!..
Отсюда выводы..
Мож я извращенец или мазохист?..

ps:
1. TCustomTreeView.Create(AOwner as TForm) тоже так же Access violation!
2. на автомате нажал Ctrl+F9, видимо чтобы скомпилировать письмо.. ;)

--
От
Serger пишите сюда:serg***@u*****.ru

Tuesday, October 4, 2005, 6:55:47 AM

Номер выпуска : 4955
Возраст листа : 745 (дней)
Количество подписчиков : 532
Адрес в архиве : http://subscribe.ru/archive/comp.soft.prog.prog/msg/449149
Получить правила : mailto:comp.soft.prog.prog-rules@subscribe.ru
Формат "дайджест" : mailto:comp.soft.prog.prog-digest@subscribe.ru
Формат "каждое письмо" : mailto:comp.soft.prog.prog-normal@subscribe.ru
Формат "читать с веба" : mailto:comp.soft.prog.prog-webonly@subscribe.ru

   2005-10-05 00:43:43 (#449149)