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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Сортировка в QTable  (Прочитано 7641 раз)
Zmey
Гость
« : Февраль 22, 2005, 16:46 »

QTable сортирует столбец по первому символу, то есть столбец с числами отсортирует как 1, 10, 100, 101, 11, 110, 113, 13, 14, 140...
Можно как-нить ему сказать что надо сортировать как числа, а не как строки? Или придется самому писать функцию сортировки?
Записан
Admin
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1988



Просмотр профиля
« Ответ #1 : Февраль 22, 2005, 17:17 »

Варианты
1. самому
2. вывод 0001 0002 0003 0004
Записан
Sergeich
Гость
« Ответ #2 : Февраль 22, 2005, 17:46 »

Отнаследуйся от QTableItem и переопредели в нем метод key()
Записан
Zmey
Гость
« Ответ #3 : Февраль 24, 2005, 10:14 »

Цитата: "Sergeich"
Отнаследуйся от QTableItem и переопредели в нем метод key()

Эээ... А как его переопределить?.. Прочитав хелп че-та не понял, что это функция делает и когда она используется.
Записан
Sergeich
Гость
« Ответ #4 : Февраль 24, 2005, 15:39 »

Код:

class IntTableItem : public QTableItem
{
public:
.....
  QString key() const;
private:
  int val;
}

QString IntTableItem::key() const
{
  return QString( "%1" ).arg( val ).rightJustify( 10, '0' );
}
Записан
Zmey
Гость
« Ответ #5 : Февраль 25, 2005, 09:46 »

Спасибо большое.
Кстати, вот тут http://www.linux-solutions.at/projects/zaurus/devel-table.html есть интересный вариант решения, с его помошью можно не заморачиваться с QTableItem.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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