IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

> Сортировка StringGrid'а
nblazhko
сообщение 20.05.2008 22:33
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 42
Пол: Мужской

Репутация: -  0  +


Сделал сортировку,сортирует верно но результат выводит в стринг грид через несколько строк,тоесть первые несколько строк пустые


procedure TForm3.Button1Click(Sender: TObject);
 var
   i,j: integer;
 begin
  with StringGrid1 do
  begin

   for j:=2 to RowCount-1 do
   begin
     for i:=1 to RowCount-j do
    begin
       if Cells[0,i]>Cells[0,i+1] then
       begin
         Rows[RowCount+1]:=Rows[i+1];
        Rows[i+1]:=Rows[i];
         Rows[i]:=Rows[RowCount+1];
       end;
     end;
   end;

  end;
end;

end.

 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов(1 - 2)
TPEMOP
сообщение 21.05.2008 20:38
Сообщение #2


Гость






По всей видимости у вас в гриде есть строки, где первая (сотрируемая) колонка пустая. Они то и попадают наверх в при выполнении сортировки
 К началу страницы 
+ Ответить 
hardcase
сообщение 25.05.2008 18:58
Сообщение #3


code warrior
****

Группа: Пользователи
Сообщений: 484
Пол: Мужской
Реальное имя: Славен

Репутация: -  8  +


Писать собственноручно сортировку - глупо.
Гораздо проще в StringList скопировать содержимое ячеек из столбца сетки, по которому производится сортировка. В поле ptr (или object) можно записать номер строки каждой ячейки.
Далее вызваем метод Sort и считваем последновательно список.


--------------------
ИзВ ин ИтЕ зА нЕ рОв НЫй П оч ЕРк
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия 1.08.2025 17:42
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"