Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как отсортировать ячейки TStringGrid по значению одного столбца?


WebSQLNeederr ©   (2008-04-30 14:40:00) 

Есть TStringGrid в первом столбце есть текст, во второй цифры. Как отсортировать теперь по второй ячейке?


Сергей М.   (2008-04-30 17:04:00) [1]


> WebSQLNeederr


+ [17]

о чем тебя, кстати, еще в [1] спросили, но ты напрочь проигнорировал вопрос.
И только аж к [11] посту выяснилось, что содержимое ячеек и номер колонки не имеет никакого значения, а грабли тебя встретили совсем в другом месте)

И кто стебется после этого, если не ты сам ?


Сергей М.   (2008-04-30 16:59:00) [2]


> WebSQLNeederr   (30.04.08 15:55) [11]
>
> харе стебаться


Кто над тобой стебется, убогий ?
Похоже что это тынад нами стебешься)

Сначала ты заявляешь, что


> Как отсортировать теперьпо второй ячейке?


что, очевидно, говорит о том, что по "первой ячейке" ты это делать умеешь и уже ранеесделал, а теперьтрудности возникли именно по второй..

А теперь выясняется, что ни ранее ни теперь, ни для первой ни для столохматой ячейки, ты этого не делал вообще, и что вопрос-то состоял в том как в ходе сортировки менять местами содержимое сравниваемых строк стрингрида)


Reindeer Moss Eater   (2008-04-30 16:51:00) [3]

И чего? Там строки и колонки это списки.
Надо просто перед тем как сувать что-либо в грид, отсортировать до вставки сами данные.


Anatoly Podgoretsky   (2008-04-30 16:43:00) [4]

> Reindeer Moss Eater  (30.04.2008 16:36:14)  [14]

Ты наверно не обратил внимание, фокус у него сместился обратно на TStringGrid


Reindeer Moss Eater   (2008-04-30 16:36:00) [5]

но при этом придется самому писать велосипед сортирующий строки.
CustomSort на мой взгляд юзабельнее.


Anatoly Podgoretsky   (2008-04-30 16:33:00) [6]

> Reindeer Moss Eater  (30.04.2008 16:26:12)  [12]

Типовое перемещение, обмен стандартно

A := B;
B := C;
C := A;


Reindeer Moss Eater   (2008-04-30 16:26:00) [7]

сначала берем список вида:
ля-ля=4
тополя=5

делаем ему CustomSort

Заносим в свой грид отсоритированное.


WebSQLNeederr   (2008-04-30 15:55:00) [8]

харе стебаться я знаю про strtoint но при чем здесь это? Мне нужно отсортировать ячейки не одного столбца а что бы вся строка перемещалась. как это реализовать?


Anatoly Podgoretsky   (2008-04-30 15:40:00) [9]

> Сергей М.  (30.04.2008 15:14:09)  [9]

А может он таинства не знает, а данные вводятся эквивалентно этому cells[i, j] := '10';


Сергей М.   (2008-04-30 15:14:00) [10]


> Может я не совсем ясно выражаюсь


Ты вообще разницу между цифрой и числомпонимаешь ?

10, 17, 22 - это числа, а не цифры !

Еще точнее это символьные представления чисел.

Где символы, там и строки.

Что нужно сделать, чтобы из строкового представления числа получить само число ? Это тебе домашнее задание)

Подсказка: строка '10' ведь как-то ведь оказалась в ячейке грида, значит тебе наверняка известно таинство получения строкового представления числа из самого числа. А теперь нужно выполнить обратное действие над каждой из таких ячеек, потому как алгоритмы сортировки чисел работают именно с числами, а не с их строковыми представлениями.


Reindeer Moss Eater   (2008-04-30 15:09:00) [11]

TStringList
procedure CustomSort(Compare: TStringListSortCompare); virtual;


Anatoly Podgoretsky   (2008-04-30 15:06:00) [12]

> WebSQLNeederr  (30.04.2008 14:51:05)  [5]

Ну естественно преобразовать текст в число и числа сортироватью


Anatoly Podgoretsky   (2008-04-30 15:05:00) [13]

> WebSQLNeederr  (30.04.2008 14:40:00)  [0]

В TStringGrid по определению ничего кроме текста быть не может.


WebSQLNeederr   (2008-04-30 14:51:00) [14]


> А откуда эти ИмяХ берутся?

Это начальные условия. Как отсортировать это?


Sergey13   (2008-04-30 14:48:00) [15]

> [3] WebSQLNeederr   (30.04.08 14:46)

А откуда эти ИмяХ берутся?


WebSQLNeederr   (2008-04-30 14:46:00) [16]

Может я не совсем ясно выражаюсь. Вот пример (в качестве разделителя будет тире - )

имя1 - 10
имя2 - 7
имя3 - 17
имя4 - 22
имя5 - 4

Теперь нужно что бы было отсортировано так:

имя5 - 4
имя2 - 7
имя1 - 10
имя3 - 17
имя4 - 22


Сергей М.   (2008-04-30 14:45:00) [17]


> WebSQLNeederr   (30.04.08 14:40)


T StringGrid ничего кроме текста в своих ячейках хранить не может и не должен по определению.


Palladin   (2008-04-30 14:42:00) [18]

А по первой типа без проблем?


Наверх

Титульная страница Поиск, карта сайта Написать письмо