Название: Непростая сортировка QTableWidget Отправлено: CJ1 от Июня 09, 2012, 09:42 Вот вопрос.
Есть QTableWidget. В него заносятся данные, соответственно сперва строки, затем столбцы. Нужно сделать так. Сортировка по нулевому столбцу. При заполнении таблицы, если встречается слово Казахстан, то эта строчка должна стать первой! Далее если встречается слово Россия, то эта строчка должна стать первой после всех строчек с надписью Казахстан! Как так можно переносить строчки то? Название: Re: Непростая сортировка QTableWidget Отправлено: _OLEGator_ от Июня 09, 2012, 10:07 Видимо переопределить сортировку в модели:
Код
Название: Re: Непростая сортировка QTableWidget Отправлено: GreatSnake от Июня 09, 2012, 11:12 Перегружаешь у QTableWidgetItem operator<
Код
далее либо создаёшь и добавляешь сам новый элемент производного класса либо через Код указываешь QTableWidget использовать его. Название: Re: Непростая сортировка QTableWidget Отправлено: CJ1 от Июня 09, 2012, 13:37 Неполучается наследовать класс
Вот пишу Код
и тут Код
Дает кучу ошибок Название: Re: Непростая сортировка QTableWidget Отправлено: GreatSnake от Июня 09, 2012, 13:40 Убери Q_OBJECT.
Название: Re: Непростая сортировка QTableWidget Отправлено: CJ1 от Июня 09, 2012, 13:46 Точно!
Но теперь пишу так Код: class ItemSort : public QTableWidgetItem Код: ItemSort::ItemSort(): QTableWidgetItem() И говорит C:\TorgBD-build-desktop-Qt_4_7_4_for_Desktop_-_MSVC2008__Qt_SDK_________\..\TorgBD\Item.cpp:10: ошибка: C2533: ItemSort::{ctor}: Є®бвагЄв®ал Ґ а §аҐиҐл ¤«п ў®§ўа й Ґ¬®Ј® вЁЇ Название: Re: Непростая сортировка QTableWidget Отправлено: CJ1 от Июня 09, 2012, 13:52 На конструктор ругается
Название: Re: Непростая сортировка QTableWidget Отправлено: GreatSnake от Июня 09, 2012, 13:54 Цитата: MSDN Compiler Error C2533 'identifier' : constructors not allowed a return type A constructor cannot a value or have a return type (not even a void return type). Название: Re: Непростая сортировка QTableWidget Отправлено: CJ1 от Июня 09, 2012, 13:59 Тоесть конструкторы тут не допускаются?
Убрал конструктор теперь компилится.... Название: Re: Непростая сортировка QTableWidget Отправлено: CJ1 от Июня 09, 2012, 14:07 Также не сортируется! Объясните доходчиво! В чем тут суть?
Название: Re: Непростая сортировка QTableWidget Отправлено: GreatSnake от Июня 09, 2012, 14:15 Также не сортируется! Объясните доходчиво! В чем тут суть? А суть в том, что с С++ у тебя совсем беда :(Тоесть конструкторы тут не допускаются? Что за бред? Смотри внимательно как ты объявил ItemSort::ItemSort(). Если не видишь, то показывай здесь, только не те обрывки что выше.Название: Re: Непростая сортировка QTableWidget Отправлено: CJ1 от Июня 09, 2012, 14:22 Ну вот сделал с конструкторами
Код: #ifndef ITEM_H Код: #include "dialog.h" Название: Re: Непростая сортировка QTableWidget Отправлено: CJ1 от Июня 09, 2012, 14:27 setSortingEnabled нужно включать???
Название: Re: Непростая сортировка QTableWidget Отправлено: CJ1 от Июня 09, 2012, 14:29 Или мне каждый item создовать именно с этим классом?
Название: Re: Непростая сортировка QTableWidget Отправлено: GreatSnake от Июня 09, 2012, 14:33 Или мне каждый item создовать именно с этим классом? Я же всё в своём первом сообщении написал.setSortingEnabled нужно включать??? Либо включай, либо вызывай QTableWidget::sortItems().Название: Re: Непростая сортировка QTableWidget Отправлено: CJ1 от Июня 09, 2012, 14:35 Понятно! Правда всеравно читстая фигня получается
Название: Re: Непростая сортировка QTableWidget Отправлено: GreatSnake от Июня 09, 2012, 14:38 Понятно! Правда всеравно читстая фигня получается Твоя "читстая фигня" нам здесь не видна. Уж потрудись разъяснить. Или на форуме в первый раз ???Название: Re: Непростая сортировка QTableWidget Отправлено: CJ1 от Июня 09, 2012, 14:39 Вобщем сортируется не так!!! А как попало! Хотя проходит через этот переопределенный метод!
И еще мне не ясно что передается в параметре other?? Название: Re: Непростая сортировка QTableWidget Отправлено: CJ1 от Июня 09, 2012, 14:44 Аааа, все, красавчик, почитал доку, понял! Теперь все сделал верно! Спасибо всем за проявленное терпения! :)
Название: Re: Непростая сортировка QTableWidget Отправлено: GreatSnake от Июня 09, 2012, 14:45 Аааа, все, красавчик, почитал доку, понял! Теперь все сделал верно! Спасибо всем за проявленное терпения! :) ???Название: Re: Непростая сортировка QTableWidget Отправлено: CJ1 от Июня 09, 2012, 14:50 Да, просто говорю, что все сделал и понял как делается
Название: Re: Непростая сортировка QTableWidget Отправлено: Igors от Июня 09, 2012, 14:57 Перегружаешь у QTableWidgetItem operator< Я никогда не использовал таблицы (не нужно), но это "нетранзитивно" и сортировка использующая такой оператор имеет право рухнуть (что она и делает на некоторых платформах). Лучше такКод
Код
Ну и не стоит говорить что такая сортировка "непростая" :) Название: Re: Непростая сортировка QTableWidget Отправлено: CJ1 от Июня 09, 2012, 15:01 Буду пробовать оба способа
|