Название: Вставка строк в QSortFilterProxyModel древовидной модели Отправлено: YvenTitan от Сентябрь 11, 2019, 18:14 Здравствуйте
У меня в QTreeView вставлена модель QSortFilterProxyModel, которая берет данные из QAbstractItemModel(sourceModel). Я хочу вставлять строки в древовидную модель следующим образом: пользователь правой кнопкой мыши нажимает на элемент, которому хочет добавить child; во всплывающем окне пишет его имя и, по идее, должен вставиться новый элемент. Функцией QTreeView::selectedIndexes, можно определить (если я правильно понимаю) только индекс для QSortFilterProxyModel. Строка вставляется в ее sourceModel. Чтобы вставку выполнить надо знать индекс родителя в sourceModel, а не в QSortFilterProxyModel. В целом хочу сделать древовидную модель, в которую можно вставить элемент и элементы которого могут сортироваться (в пределах одного уровня, чтобы дети одного родителя могли идти по алфавиту) Можно, сделать сортировку через пользовательскую функцию пределах модели QAbstractItemModel, но, кажется, что правильнее через QSortFilterProxyModel. Можете идеологически подсказать, как организовать вставку строки в такую древовидную модель, когда пользователь через графический интерфейс указывает, какому родителю вставить ребенка? Название: Re: Вставка строк в QSortFilterProxyModel древовидной модели Отправлено: ssoft от Сентябрь 12, 2019, 07:50 Соотношения индексов sourceModel и QSortFilterProxyModel можно получить с помощью методов
Код
Название: Re: Вставка строк в QSortFilterProxyModel древовидной модели Отправлено: YvenTitan от Сентябрь 12, 2019, 09:42 Спасибо, помогло!
|