crossplatform.ru

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

> сортировка элементов Сцены
genusatplay
  опции профиля:
сообщение 11.12.2008, 14:32
Сообщение #1


Студент
*

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

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




Репутация:   0  


народ помогите плиз советом..
у меня есть QGraphicScene
на котором я создаю (class DiagramItem : public QGraphicsPolygonItem) в диаграм итеме храниться полигон и инфа(параметры)
я подобавлял на форму итемов, поредактил их
терь нада все сохранить в файл xml.. но вот в чем проблема..
итемы добавлялись в сцену в произвольном порядке.. мне нужно отсортировать их слева направа сверху вниз
по их координатам x,y относительно полотна
а потом выгрузить в файл и еще отнимать от Элемент_списка.x Предыдуший_элемент.x чтоб в итоге получать
в шаблоне отступ относительно предыдущего элемента.
мб есть какиенибудь стандартные фичи для такой сортировки?
если нет.. подскажите как мне это сделать?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Admin
  опции профиля:
сообщение 13.12.2008, 12:31
Сообщение #2


Администратор
****

Группа: Администратор
Сообщений: 646
Регистрация: 9.10.2007
Из: crossplatform.ru
Пользователь №: 1

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




Репутация:   2  


Цитата(genusatplay @ 12.12.2008, 23:10) *
а можно какнить отсортировать Qlist<sCrd> qSort'ом просто определив ему чтоб он сортировал по nY?
Можно, но только с помощью void qStableSort ( RandomAccessIterator begin, RandomAccessIterator end, LessThan lessThan ), смотри пример:
 bool caseInsensitiveLessThan(const QString &s1, const QString &s2)
{
     return s1.toLower() < s2.toLower();
}

int doSomething()
{
     QStringList list;
     list << "AlPha" << "beTA" << "gamma" << "DELTA";
     qStableSort(list.begin(), list.end(), caseInsensitiveLessThan);
хоть он и QString, но с int то же самое... :)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


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


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




RSS Текстовая версия Сейчас: 28.12.2024, 18:23