Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: QTreeWidget внутреннее перетаскивание. XML переподчинение элемента.
Форум на CrossPlatform.RU > Библиотеки > Qt > Qt Обработка XML
Sergo
Использую PyQT 4.4.2, изучаю недавно. Есть дерево. Структура хранится в xml-файле. Очень нравится как библиотека штатно обрабатывает перетаскивание, и менять функционал не хочется. Но есть пара вопросов:
1. После вставки надо изменить xml документ. Куда надо вклиниться, чтобы отловить момент, когда библиотека отработала вставку, чтобы добавить свой кусок кода?
2. Как в xml документе переподчинить елемент? Или надо делать клон, удалять старый элемент, потом вставлять клон куда надо?
Всем заранее спасибо.
Litkevich Yuriy
Цитата(Sergo @ 3.8.2009, 19:05) *
Есть дерево.
представление (*View) или виджет (*Widget)?
Sergo
виджет (*Widget)
SABROG
Цитата(Sergo @ 3.8.2009, 16:05) *
1. После вставки надо изменить xml документ. Куда надо вклиниться, чтобы отловить момент, когда библиотека отработала вставку, чтобы добавить свой кусок кода?

Возможно надо переопределить метод void QAbstractItemView::dropEvent ( QDropEvent * event ) [virtual protected]

Цитата(Sergo @ 3.8.2009, 16:05) *
Как в xml документе переподчинить елемент? Или надо делать клон, удалять старый элемент, потом вставлять клон куда надо?
Всем заранее спасибо.


Думаю зависит от парсера, которым ты пользуешься.
Sergo
Разобрался. Если кому интересно.
Ответ на 1. вопрос:
def dropEvent(self, event):
     QtGui.QTreeWidget.dropEvent(self, event)

Ответ на 2. вопрос:
QDomNode.insertAfter и QDomNode.insertBefore сами переподчиняют ветку

Всем спасибо. Тема закрыта.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.