Здравствуйте, гость ( Вход | Регистрация )
Vass | Дата 21.4.2009, 16:35 |
Попробуй сделать такую полседовательность, и именно в таком порядке.
Должно помоч. По крайней мере в асистенте сказано, что для подклассов QAbstractItemModel, прежде чем выслать layoutChanged, необходимо выслать layoutAboutToBeChanged Пробовал, непомогло Попробуй сделать такую полседовательность, и именно в таком порядке.
Должно помоч. По крайней мере в асистенте сказано, что для подклассов QAbstractItemModel, прежде чем выслать layoutChanged, необходимо выслать layoutAboutToBeChanged хм... похоже помогло... сейчас потестирую... Но как то странно делал вызов layoutAboutToBeChanged(); в модели потом вносил изменения и делал layoutChanged(); не помогало, а подряд вроде работает. Нет.. все-таки не помогло, стало так: когда дроп из себя в себя иногда не валиться, когда дроп извне валиться всегда. |
|
igor_bogomolov | Дата 21.4.2009, 14:29 |
Попробуй сделать такую полседовательность, и именно в таком порядке.
Должно помоч. По крайней мере в асистенте сказано, что для подклассов QAbstractItemModel, прежде чем выслать layoutChanged, необходимо выслать layoutAboutToBeChanged |
|
Vass | Дата 21.4.2009, 14:02 |
Моя модель наследуется от QAbstractItemModel и приделана к QTreeView через QSortFilterProxyModel. После дропа item'a на дерево делаю emit layoutChange() у модели, в асситенте написано, что это, можно сказать единственный адекватный способ перерисовать дерево. Однако, после этого вызова приложение валиться. бактрейс говорит что ошибка где-то в недрах Qt4Core в QProxyModel. Самое интересное, что валится все только в том случае, когда дропаешь на нулевую колонку (колонку с деревом). Кто-то может встречался с такой проблемой, я новичок в Qt, может что-то не так делаю, но уже замучался третий день биться с этой проблемой. |
|
Просмотр темы полностью (откроется в новом окне) | |
Текстовая версия | Сейчас: 27.4.2024, 22:05 |