Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 2 588

/ вопрос открыт /

всем привед
Есть ListView. даблбуффер и овердата =тру . Стайл - vsreport
Есть типы
type
TSity = record
Name:string[50];
Code:integer;
Country:string[50];
GMT:Shortint;
end;
TArrSity = array of TSity;

Загружаю данные из файлика в массив, через OnData все отображается в ListView просто замачательна! НО что нужно так это сортировка по колонкам!
Я в ступоре. Уже все перепробывал (

К вопросу прикреплён файл. Загрузить » (срок хранения: 60 дней с момента отправки вопроса)

Приложение:
  1. Delphi 2009


Эхо Унитазного Бачка Вопрос ожидает решения (принимаются ответы, доступен мини-форум)

Вопрос задал: Эхо Унитазного Бачка (статус: 1-ый класс)
Вопрос отправлен: 2 апреля 2009, 15:44
Состояние вопроса: открыт, ответов: 1.

Ответ #1. Отвечает эксперт: Вадим К

Здравствуйте, GangrenaGastrit!
Клик по колонке отслеживается просто - есть нужно событие.
После этого, надо определиться, в какую сторону сортировать - для этого обычно заводят переменную, где хранят номер стобца. Если но столбцу кликнули ещё раз, то меняем знак на противоположный - знак того, что сортировка идёт в противоположном направлении. 0 - отсутствие сортировки. Используя эту переменную, можно рисовать треугольничек.
Собственно, как только был произведёт клик, надо ручками отсортировать массив. РУЧКАМИ! При этом можно сортировать так, как надо (как хочеться). А потом только надо дать комманду обновить листвью - ListView1.Items.Update(0, ListView1.Items.count-1); (или там не надо items вначале - не помню, и делфи нет по рукой). Листвью сам перезапросит элементы и всё будет красиво:)

Ответ отправил: Вадим К (статус: Академик)
Время отправки: 2 апреля 2009, 15:52
Оценка за ответ: 4

Комментарий к оценке: ЧОРТ. Так и думал что придется ручками :-\
Спасибо.

Мини-форум вопроса

Всего сообщений: 1; последнее сообщение — 2 апреля 2009, 16:11; участников в обсуждении: 1.
Вадим К

Вадим К (статус: Академик), 2 апреля 2009, 16:11 [#1]:

а 4 из за того видимо, что хотелось автоматом?:) ну я тут не при чем. Откуда листвью знать, что Вам надо сортировать. Ведь никто не заставляет сортировать именно по алфавиту или по порядку. К примеру, одни считают, что ё должа быть после е, другие, что просто надо приравнять, а есть такие, которые в конец остсылают. Хотя это дело можно частично автоматизировать.
Но вдруг хочеть как то вообще специфически отсортировать? например с исключением дубликатов.
а этот способ никак не ограничивает полет мысли:)
Галочка "подтверждения прочтения" - вселенское зло.

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 22 февраля 2025, 11:26
Выполнено за 0.03 сек.