crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> QSortFilterProxyModel::lessThan глюк
explorer85
  опции профиля:
сообщение 4.8.2011, 17:15
Сообщение #1


Студент
*

Группа: Новичок
Сообщений: 12
Регистрация: 18.3.2011
Пользователь №: 2517

Спасибо сказали: 0 раз(а)




Репутация:   0  


Вобщем при сортировке данных с помощью данной функции возникла следующая проблема:
у меня включена динамическая сортровка setDynamicSortFilter(true); и во при изменении данных в строке они автоматически сортируются, но если у нас есть список такого вида
номер строки данные в элементе по ктороым идет сортировка
0 1
1 2
2 2
3 2
4 3
5 4
6 5

то при сортировке строки номер 1,2,3 сортируются в произвольном порядке так как значения в них одинаковы, и при каждой пересортировке они меняются местами.
можно ли этого как нибудь избежать?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ilyabvt
  опции профиля:
сообщение 4.8.2011, 21:01
Сообщение #2


Активный участник
***

Группа: Участник
Сообщений: 297
Регистрация: 23.6.2011
Пользователь №: 2765

Спасибо сказали: 45 раз(а)




Репутация:   3  


Скорее всего это особенность алгоритма сортировки, значит нужно:
1) После пересортировки восстанавливать исходный порядок следования совпадающих элементов
или
2) Писать свой алгоритм сортировки (хотя правильнее будет сказать реализовать т.к. самих алгоритмов и так уже придумали выше крыши).
или
3) Я ошибаюсь и это можно сделать проще.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
PAFOS
  опции профиля:
сообщение 5.8.2011, 8:56
Сообщение #3


Активный участник
***

Группа: Участник
Сообщений: 258
Регистрация: 27.12.2010
Из: Дмитров
Пользователь №: 2309

Спасибо сказали: 29 раз(а)




Репутация:   8  


может еще потребоваться определить операторы сравнения для класса, который представляет этот тип данных.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 28.3.2024, 20:06