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

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

сортировка в StringGridе


AlexJ ©   (2002-09-28 01:47:00) 

Уважаемые мастера! Вы уж мне (чайнику) ответьте, как в StringGridе сортировать строки. Например, по дате, по алфавиту. Заранее, спасибо!


PaRL   (2002-09-28 16:45:00) [1]

Я в своей проге делал TStringList - он сортировать умеет, дату не проверял, но должен работать.
//Массив. Можно динамический сделать.
type xxx = array [1..100] of array [0..100] of string;
var x : TStringList;
m, s, col, N, F, d, k : integer;
str : xxx;
begin
N := SG.ColCount-1;
F := SG.RowCount-2;

for m := 1 to F do
for s := 0 to N do
str[m, s] := SG.Cells[s, m];

x := TStringList.Create;
for m := 1 to SG.RowCount-2 do
x.Add(SG.Cells[0,m]); //заполняем StringList

x.Sort; //сортируем

for m := 1 to SG.RowCount-2 do
SG.Cells[0,m] := x.Strings[m-1]; //заносим обратно


for k := 1 to F do
for m := 1 to F do
if str[k, 0] = SG.Cells[0, m] then
for s := 1 to N do
SG.Cells[s, m] := str[k, s];


Я давно это делал, помню у меня там своя какая-то особенность была, так что сам уж разберись.


Наверх

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