| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets > QTableView QScrollBar зависание. |
| Автор: Pro100MoNEy 20.5.2013, 21:42 |
| 1) У меня есть модель и QTableView, мне необходимо скрывать строки, я сделал так когда QTableView запрашивает данные модель решает нужно ли отобразить строку если нет то вызывает setRowHidden() в QTableView, кривовато, но другого решения я не нашел, т.к. строк ~2 млн. Проблема в том что если скрыть большую часть строк, таблица постоянно запрашивает данные(А модель вызывает setRowHidden()), при 5 строках скроллбар остается таким же большим. Ест процессор, и если перемотать скролл в самый низ, GUI зависает если скролить не до конца вниз то все нормально. Проблема в том что скрываются строки по одной что очень долго. Можно как-то побороть это? Может унаследоваться от QVerticalHeader и как то добавить сокрытие множества строк(если это возможно то как)? Можно поменять размер ползунка скролл бара? пробовал setMaximum при прокрутке обновляется до исходного. 2)Есть ли нормальный отладчик в котором будет видно данные в контейнерах? Vector и QString не посмотреть при отладке. (MinGW, windows) |
| Автор: math64 21.5.2013, 07:09 |
| Скрывать строки следует с помощью QSortFilterProxyModel - можно убрать не нужные, а можно и отсортировать оставшиеся, причём достаточно быстро. |
| Автор: borisbn 23.5.2013, 06:17 |
| > Vector и QString не посмотреть при отладке. (MinGW, windows) MinGW - это компилятор, windows - ОС. Ни первое ни второе не может даже int просмотреть. Какой IDE пользуешься? |
| Автор: Pro100MoNEy 23.5.2013, 22:38 |
| Qtcreator, отладчик phytongdb вроде. |
| Автор: borisbn 24.5.2013, 05:41 |
| Creator отлично показывает и vector и QString. Не понимаю, в чём проблема |