![]() |
|
|
|
|
#1
|
|||
|
|||
|
Никто из местных гуру не может помочь в проблемке (маленькой такой)?
Есть TreeView и может быть он этаким развесистым деревом. Двойной клик на элементе дерева открывает ветку дочерних элементов (или закрывает ее, если была открыта). Проблема в том, что на этом событии (от двойного клика) висит код, который выполняется и при этом совсем ни к чему мне эти закрытия/открытия - мешают. Закрывать и открывать ветки можно и через кнопочки (+/-), которые слева от элемента или через клавиатуру, что весьма удобно. Давно уж пытаюсь справиться с проблемой, но пока один облом. |
|
#2
|
|||
|
|||
|
мне кажется, что это можно победить только переписав компонент самому. Т.е. отнаследоваться и поправить в нужном месте.
|
|
#3
|
||||
|
||||
|
Необходимо переделать модуль ComCtrls, отредактировать свойства класса TCustomTreeView, в частности код сворачвания\разворачивания.
|
|
#4
|
|||
|
|||
|
Нет, коллега, M.A.D.M.A.N. исходники Delphi переделывать не буду и никому не советую.
Ох, грехи наши тяжкие, коллега lmikle, видно по твоему и придется делать. Спасибо. Что-то тормознул, раньше в голову не пришло, хотя на поверхности решение лежит (ну, это после подсказки ). |
|
#5
|
||||
|
||||
|
Цитата:
, правда приходилось сохранять под другим именем и компонент вызывать чистым кодом Вот мой переделанный компонент MZFShellTree ![]() Он позволяет переходить в указанную папку, получать полные пути к папкам и прочее ![]() |
|
#6
|
|||
|
|||
|
Спасибо, M.A.D.M.A.N., вообще то, что надо уже сделал. В доморощенном компоненте наследние от TTreeView понадобилось перекрыть один метод (DoDblClick), да одно сообщение (WndProc) и все дела. TreeView стал как шелковый.
|