2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Сортировка по убыванию StringGrid delphi
Сообщение23.05.2013, 23:16 


09/04/13
20
Здравствуйте . есть код сортировки по возрастанию. что нужно изменить,чтобы была сортировка по убыванию . подскажите,пожалуйста


Код:
procedure TForm9.SgSort(aSg : TStringGrid; const aCol : Integer);
var
  SlSort, SlRow : TStringList;
  i, j : Integer;
begin
  SlSort := TStringList.Create;
  for i := aSg.FixedRows to aSg.RowCount - 1 do begin
       SlRow := TStringList.Create;
    SlRow.Assign(aSg.Rows[i]);
    SlSort.AddObject(aSg.Cells[aCol, i], SlRow);
  end;
  SlSort.Sort;
  j := 0;
  for i := aSg.FixedRows to aSg.RowCount - 1 do begin
        SlRow := Pointer(SlSort.Objects[j]);
      aSg.Rows[i].Assign(SlRow);
       SlRow.Free;
       Inc(j);
  end;
  SlSort.Free;
end;

 Профиль  
                  
 
 Re: Сортировка по убыванию StringGrid delphi
Сообщение23.05.2013, 23:37 
Заслуженный участник


27/04/09
28128
Видите строку SlSort.Sort;? Это сортировка и есть.

Смотрите, как умеет сортировать TStringList.Sort. Может, по убыванию и не. (А почему TStringList? Потому что раньше SlSort := TStringList.Create;.)

 Профиль  
                  
 
 Re: Сортировка по убыванию StringGrid delphi
Сообщение24.05.2013, 00:03 


09/04/13
20
arseniiv в сообщении #727613 писал(а):
Видите строку SlSort.Sort;? Это сортировка и есть.

Смотрите, как умеет сортировать TStringList.Sort. Может, по убыванию и не. (А почему TStringList? Потому что раньше SlSort := TStringList.Create;.)



Вижу. ну и что из этого? как сделать,что сортировалось в обратном порядке данному?

 Профиль  
                  
 
 Re: Сортировка по убыванию StringGrid delphi
Сообщение24.05.2013, 00:06 
Заслуженный участник


27/04/09
28128
Значит, не видите:
arseniiv в сообщении #727613 писал(а):
Смотрите, как умеет сортировать TStringList.Sort. Может, по убыванию и не [умеет].

Посмотрите в справке. Возможно, у TStringList есть свойство, указывающее порядок сортировки. Возможно, метод принимает соответствующий параметр.

 Профиль  
                  
 
 Re: Сортировка по убыванию StringGrid delphi
Сообщение24.05.2013, 00:29 


09/04/13
20
arseniiv в сообщении #727637 писал(а):
Значит, не видите:
arseniiv в сообщении #727613 писал(а):
Смотрите, как умеет сортировать TStringList.Sort. Может, по убыванию и не [умеет].

Посмотрите в справке. Возможно, у TStringList есть свойство, указывающее порядок сортировки. Возможно, метод принимает соответствующий параметр.



хорошо.спасибо

 Профиль  
                  
 
 Re: Сортировка по убыванию StringGrid delphi
Сообщение24.05.2013, 08:10 
Заслуженный участник


06/07/11
5627
кран.набрать.грамота
http://stackoverflow.com/questions/2175 ... -in-delphi

Надо вызвать функцию CustomSort, которая на вход принимает ссылку на вашу собственную функцию сравнения. В этой своей функции сравнения вы можете наколбасить все, что угодно.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 6 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group