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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Разбиение строк постранично в QSqlTableModel  (Прочитано 2905 раз)
Pupil
Гость
« : Июнь 17, 2013, 16:56 »

Здравствуйте!

Код:
QSqlTableModel
+   
Код:
QTableWidget

Существует ли стандартный метод разбиения строк QqlTableModel для отображения , например, по 10, с указанием порядкового номера десятки, т.е.
первые 10 строк, вторые 10 строк , третьи десять строк и т.д.?

В QSqlQueryModel с помощью метода SetQuery() данный алгоритм удается,
а для QSqlTableModel метод SetFilter выдает ошибку запроса (последний запрос) и ругается на ORDER BY.
qDebug (если необходимо) могу приложить завтра.

и попутный вопрос - если в определённом слоте применяется setSort(...), то как отключить сортировку чтобы после LIMIT 10 OFFSET 0
setFilter больше ничего не дописывал?

Может кто-то сталкивался с подобной задачей?
Записан
Pupil
Гость
« Ответ #1 : Июнь 18, 2013, 09:00 »

погуглил форум на данную тему. Всё грустно. Или костыль делать или промежуточную модель-тормоз ) Троли недоглядели. )
Записан
Bepec
Гость
« Ответ #2 : Июнь 18, 2013, 10:06 »

А я вас не понимаю!   Веселый

Вы хотите предъявлять по 10 записей пользователю? Али как? Нарисуйте как есть и как хотите, или опишите словами.

А я покумекаю быть может что нибудь Подмигивающий
Записан
Pupil
Гость
« Ответ #3 : Июнь 18, 2013, 14:25 »

QSqlTableModel отображает все строки таблицы. Строк может быть и 1000 и 2000.
Для удобства - выбирать из списка
Код:
QComboBox
значение количества строк одной страницы (данного отображения),
а в
Код:
QSpinBox
вводить от 1 и далее - номера страниц, которые необходимо отобразить в данный момент.
Если номер количество строк страницы выбрать 10, а номер страницы 1, то с 0 по 10-ую строку БД, есди номер 2, то 11-21 и т.д. )
Записан
Pupil
Гость
« Ответ #4 : Июнь 18, 2013, 14:28 »

Логически, ещё на это необходимо учитывать строку запроса для setFilter при критериальных выборках. И , если, для
Код:
QSqlQueryModel
существует строка вариативного запроса, то
строка, которая копится для метода
Код:
setFilter(QString)
- не есть стандартный запрос. )
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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