Название: Одна модель, два представления Отправлено: twister9893 от Июнь 25, 2016, 13:55 Всем доброго дня. Прошу наставить на путь истинный.
Есть одна модель, которая по сути является оберткой для нескольких XML (на картинке в левой части файлы - элементы дочерние пункту "Абоненты"), в которых лежат известные структуры данных. Правая же часть должна отобразить выделенную структуру данных (в дереве слева это элементы с типом rule и packet). Так вот, как же дать понять правой части что нужно брать из модели не все, а только то что выделено слева. Подозреваю, что поможет QAbstractProxyModel, но как - не знаю :) Название: Re: Одна модель, два представления Отправлено: Bepec от Июнь 25, 2016, 14:28 Второе представление должно запрашивать данные выборочно.
PS мне на ум приходит только вторая модель с "временными" данными. Название: Re: Одна модель, два представления Отправлено: Racheengel от Июнь 25, 2016, 17:44 а QModelIndex и Tree Model уже не модно? :)
Название: Re: Одна модель, два представления Отправлено: twister9893 от Июнь 25, 2016, 17:58 а QModelIndex и Tree Model уже не модно? :) В качестве модели использую свою реализацию QAbstractItemModel, и в QTreeView все отображается как надо. А вопрос заключается в том как используя ту же модель заставить QTableView(справа на картинке) показывать данные только из выделенного элемента в дереве. Только отдельная модель поможет? Название: Re: Одна модель, два представления Отправлено: Igors от Июнь 26, 2016, 05:03 Почему "одна модель"? Число колонок разное - значит 2 разные модели, просто использующие одни и те же базовые данные
Название: Re: Одна модель, два представления Отправлено: Bepec от Июнь 26, 2016, 10:39 Чтобы реализовать то, что вы хотите, необходимо написать свою модель с данным функционалом(притворяться что модель разная в зависимости от запрашивающего), ну или написать свой view.
Или плюнуть на эту фигню и тупо передавать нужные данные в новую модель :D Название: Re: Одна модель, два представления Отправлено: twister9893 от Июнь 26, 2016, 12:50 Всем спасибо, действительно наверное проще две модели сделать :)
|