Форум: "Основная";
Текущий архив: 2004.11.14;
Скачать: [xml.tar.bz2];
ВнизЭкзотика - компонент VirtualTreeview Найти похожие ветки
← →
Matrex (2004-10-29 23:42) [0]Есть ну очень мощный компонент VirtualTreeview – альтернатива встроенному в Delphi TreeView+ListView в одном флаконе. Так что вопрос для бывалых. Итак, создаю обработчик редактирования ячеек. Проблема – при выходе из редактора (обработчика), например по кнопке ENTER не могу обновить окно VirtualTreeview дабы отобразить измененное содержимое ячейки. Вопрос – как корректно выйти из обработчика в основной поток программы и отработать определенный код, в моем случае графически обновить окно VirtualTreeview?
← →
jack128 © (2004-10-30 01:38) [1]Matrex (29.10.04 23:42)
Экзотика - компонент VirtualTreeview
Это далеко не экзотика. Этот компонент, AFAIK, на диске с семеркой находится..
у интерфейса IVTEditLink есть метод EndEdit.
function EndEdit: Boolean; stdcall; // called when editing has been finished by the tree
а вообше дерево автоматом обновляется после радактирвания..Ну в крайнем случае как обычно - делай Invalidate..
← →
Matrex (2004-10-30 10:27) [2]:) Да вот не работает эта штука. Суть такая - в обработчике создаю TEdit, опрашиваю клаву - если нажат ENTER то считаю что ввод завершен - вызываю EndEdit где обновляю данные в ноде, прячу Edit, передаю фокус на дерево (как сделано в примере). Но новое значение не отображается - и что я только не делал и refresh, и refreshnode и т.д. и.т.п. Да и вообще, какое сообщение срабатывает после окончания редактирования? Ведь которые там прописанны срабатывают только со стандартным обработчиком...
← →
jack128 © (2004-10-30 16:54) [3]Matrex (30.10.04 10:27) [2]
вызываю EndEdit где
Зачем? Это дерево вызывает этот метод когда закончено релдактирование. Ты путаешь причину и следствие. Этот метод вызывается когда закончено редактирование, а не редактирование закончено потому чтоо этот метод вызвали ;-) Заставить дерево выйти из режима ректирования можно методом TBaseVirtualTree.EndEditNode .
Matrex (30.10.04 10:27) [2]
Да и вообще, какое сообщение срабатывает после окончания редактирования
Без понятия. Сомневаюсь, чтобы вообще какое нить приходило - это же не оболочка над виндовым TreeView, а полностью с нуля написаное дерево.
Matrex (30.10.04 10:27) [2]
и что я только не делал и refresh, и refreshnode
значит как то коряво данные в Node"е обновил. Код в студию(с)
Matrex (30.10.04 10:27) [2]
? Ведь которые там прописанны срабатывают только со стандартным обработчиком
в смысле со стандартным editor"ом?? Скачай VTEditors - посмотри как делается редакторы..Схема работы дерева никак не зависит от редактора.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.11.14;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.049 c