VirtualTreeView: изменить следующий столбец

Как настроить виртуальное дерево для редактирования следующего столбца, когда пользователь нажимает TAB?

+--------+-----------+
+ |1     + |2        +
+--------+-----------+
+        +           +
+--------+-----------+

Поведение по умолчанию — редактирование следующего узла/строки:

+--------+-----------+
+ |1     +           +
+--------+-----------+
+ |2     +           +
+--------+-----------+

person jpfollenius    schedule 02.07.2013    source источник
comment
Если вы используете редактор по умолчанию класса TVirtualStringTree, то редактор реализуется классом TVTEdit. Этот класс обрабатывает сообщение WM_KEYDOWN, в котором для виртуального ключа VK_TAB жестко запрограммировано переключение на следующий узел без учета столбцов. В качестве самого простого решения я бы предложил вам реализовать свой собственный редактор через интерфейс IVTEditLink.   -  person TLama    schedule 02.07.2013
comment
Поскольку редактируемые столбцы/режим сетки не учитываются, мне это кажется ошибкой. Вам следует открыть задачу на странице code.google.com/p/virtual-treeview. Если вы можете предоставить патч, я буду рад включить его в следующий выпуск.   -  person Joachim Marder    schedule 02.07.2013


Ответы (1)


Я бы предложил настроить событие «OnKeyPress», а затем вручную направить выбранный элемент в дереве на нужный следующий элемент.

person James_Hill    schedule 26.02.2014