Russian Qt Forum
Августа 26, 2025, 20:53 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: QTreeView – как определить видимые индексы?  (Прочитано 4783 раз)
Aleskey
Гость
« : Января 29, 2008, 01:13 »

Здравствуйте
Есть модель, есть прокси модель, все подключено к QTreeView, все замечательно работает. Но надо по нажатию кнопки определить индексы видимых в данный момент в QTreeView  итемов.
Сильно не пинайте. В Qt новичок. Полазил по Assistant и по форуму но что то не чего подходящего не нашел.
Спасибо
ЗЫ. Qt 4.2.2 
Записан
ритт
Гость
« Ответ #1 : Января 29, 2008, 02:30 »

индексы в модели? смотри документацию по проксе и абстрактпроксе (мап2соурч, кажись)
советую переходить на 4.3(.3), т.к. в 4.2.х прокси довольно ущербные
Записан
Aleskey
Гость
« Ответ #2 : Января 29, 2008, 09:24 »

Да, мне нужны индексы в модели. Объясню поподробнее. Данные хранятся в модели в QList-е. С помощью прокси они фильтруются в QTreeView. mapToSource используется. По одиночному клику на итеме в QTreeView я без проблем получаю нужный индекс в модели и достаю нужные данные. Сейчас мне надо получить все индексы итемов видимых в данный момент на экране в QTreeView. Мне надо что то похожее на selectedIndexes() у QItemSelectionModel. Оно возвращает  QModelIndexList выделенных в данный момент итемов. Только мне надо не выделенных а видимых в данный момент итемов.
Перейти на 4.3 нельзя. У заказчика версия 4.2.2
Спасибо.
Записан
Tonal
Гость
« Ответ #3 : Января 29, 2008, 13:43 »

А кто мешает просто пройтись по итемам фильтра?
Если тебе нужны именно видимые, тогда этот список можно отфильтровать по QTreeView::visualRect(item).isValid(), например.
Или с помощью indexAt узнать верхний элемент, и перебирать пока видимые. :-)
Записан
ритт
Гость
« Ответ #4 : Января 29, 2008, 13:50 »

видимо, я недопонял первоначальный вопрос

если строк не много, перебирай визуалРект всех имеющихся индексов Улыбающийся
/* сейчас не могу ничего умнее предложить - нет времени лезть в асистант */

АПД: либо у Тонал'а тоже нет времени, либо других вариантов просто нет
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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