Russian Qt Forum
Ноябрь 23, 2024, 07:41 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: [РЕШЕНО] Сигнал модели отображению  (Прочитано 2440 раз)
unkeep
Гость
« : Апрель 30, 2013, 09:11 »

Необходимо в алгоритме фильтрации модели (унаследованной от QSortFilterProxyModel) в некоторых местах посылать сигнал для treeView c индексом, для раскрытия элемента.
пробую так:
часть кода переопределённого filterAcceptsRow:
Код
C++ (Qt)
ViewModel *viewModel = (ViewModel*) this; // because filterAcceptsRow is static function
QModelIndex itemToExpand = columnIndexes.first();
emit viewModel->ExpandMe(itemToExpand);

в конструкторе главного окна соединяю
Код
C++ (Qt)
connect(_controller->GetView(),SIGNAL(ExpandMe(QModelIndex)),_ui->treeView,SLOT(expand(QModelIndex)));
однако не работает...
« Последнее редактирование: Апрель 30, 2013, 09:55 от unkeep » Записан
Bepec
Гость
« Ответ #1 : Апрель 30, 2013, 09:23 »

А разве моделька разворачивает итемы? Мб глупый вопрос конечно Улыбающийся
Записан
unkeep
Гость
« Ответ #2 : Апрель 30, 2013, 09:30 »

может быть это немного не правильно, но у меня пока есть два варианта:
1)"модель разворачивает treeview"
2)модель запоминает индексы, после пробегаем по вектору с индексами и раскрываем

1ый варик по идее должен отрабатывать быстрее. Так работает "в один проход"
может быть подскажете 3-ий?
Записан
unkeep
Гость
« Ответ #3 : Апрель 30, 2013, 09:54 »

стоп. зашёл с другой стороны, оказалось, что сойдёт просто развернуть ВСЕ элемнеты после фильтрации.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.084 секунд. Запросов: 20.