Название: Не работают события D&D под Linux Отправлено: Stuart от Января 16, 2010, 16:23 Имеется класс, наследуемый от QMainWindow. В секции protected, как и полагается, переопределены виртуальные функции dragEnterEvent, dragMoveEvent и dropEvent. Отлавливаю перемещение узлов QTreeWidgetItem внутри виджета QTreeWidget. В Windows функции вызываются и корректно работают. В Linux вообще никакие события Drag&Drop не отлавливаются на том же самом коде. Почему? Где подводные камни и в чём может быть косяк?
В Windows Qt 4.5.0, компилятор MS C++ 2008 SP1. Под Linux пробовал под Qt 4.4.3 и 4.5.3 на gcc 3.4.6 и 4.4.1. Название: Re: Не работают события D&D под Linux Отправлено: BlackTass от Января 16, 2010, 16:54 Минимально компилябельный код можете выложить?
Название: Re: Не работают события D&D под Linux Отправлено: Stuart от Января 16, 2010, 18:08 Да, немного переделал. Требуется срабатывание метода void ISConfigurator::dragEnterEvent(QDragEnterEvent * event). Он должен вызываться при перемещении узлов дерева внутри виджета QTreeWidget с целью информирования пользователя о сохранённых изменениях. Но в Linux это не происходит, в венде проблем нет.
Название: Re: Не работают события D&D под Linux Отправлено: Павел_F. от Января 16, 2010, 18:26 У QTableWidget тоже самое было. Добавьте :
Код Ну и Код Для QTableWidget все начало работать. Название: Re: Не работают события D&D под Linux Отправлено: Stuart от Января 16, 2010, 19:44 Не получится: класс наследуется от QMainWindow, от QTreeWidget нельзя. :(
Название: Re: Не работают события D&D под Linux Отправлено: Павел_F. от Января 16, 2010, 20:01 Раз используется QTreeWidget в чем проблема сделать свой TreeWidget с измененным фильтром и использовать его вместо QTreeWidget???
Название: Re: Не работают события D&D под Linux Отправлено: Stuart от Января 16, 2010, 21:17 Немного не представляю, как это сделать, когда класс завязан с UI Qt, да и переписывать много придётся...
Название: Re: Не работают события D&D под Linux Отправлено: Авварон от Января 16, 2010, 22:33 в смысле класс на ui-шке? в дизайнере есть promote to...
Название: Re: Не работают события D&D под Linux Отправлено: Павел_F. от Января 16, 2010, 23:20 да и переписывать много придётся... Про ui ничего не скажу... У меня без них. Всех переделок, у меня, на 30 сек. |