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

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

Удаление выделенного ряда в TStringGrid [D6]


Gomez ©   (2005-10-07 14:53:00) 

Как удалить выделенный ряд? Я знаю, что существует свойство Selection. Насколько я понимаю при выделении 3 ряда myRect1.Top(где myRect1: TGridRectи StringGrid1.Selection := myRect1) должно быть равно 3. Однако это не так. Так каким образом обратиться к выделенному ряду и заменить его содержимое содержимым нижнего ряда и дальше StringGrid1.RowCount := StringGrid1.RowCount -1таким образом удалив текущий ряд? Заранее спасибо.


Gomes   (2005-10-07 16:49:00) [1]

Спасибо. Понял. Буду пыхтеть дальше.


Leonid Troyanovsky   (2005-10-07 16:21:00) [2]


> Gomez   (07.10.05 14:53)  
> Как удалить выделенный ряд? Я знаю, что существует свойство
> Selection. Насколько я понимаю при выделении 3 ряда myRect1.
> Top (где myRect1: TGridRect и StringGrid1.Selection := myRect1)



Selection актуально при Options includes goRangeSelect.
В остальных случаях это Row.

Удаляется он, например, перемещением нижележащих рядов на один ряд
вверх, и установкой RowCount := RowCount -1.

Hапример:


procedure TForm1.Button1Click(Sender: TObject);
var
  i: Longint;
begin
  with StringGrid1 do
    begin
      for i:= Row to RowCount - 2 do
        Rows[i] := Rows[i+1];
      RowCount:= RowCount - 1;
    end;
end;


--
Regards, LVT.


Наверх

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