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

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

Помогите разобраться со StringGirid ом [D6, Win2k]


Vladimir.st ©   (2002-06-26 16:25:00) 

Доброго времени суток!!!
Есть форма, есть StringGrid, из него необходимо удалить строку целиком, такой код категорически отказывается работать:
with StringGrid1 do
begin
j:= Col;
Cols[0].Delete(j);
end;
Всем заранее спасибо!!!


MBo   (2002-06-26 17:19:00) [1]

type
TXGrid=class(TStringGrid);

...
TXGrid(StringGrid1).DeleteRow(2);


Skier   (2002-06-26 17:10:00) [2]

>Vladimir.st

А если так :


procedure GridUpShift(AStringGrid : TStringGrid; const ARowToDelete : Longint);
var
ii : Integer;
jj : Integer;
begin
if AStringGrid = nil then Exit;
if (ARowToDelete > AStringGrid.RowCount - 1) or
(ARowToDelete < 0) then Exit;

with AStringGrid do begin
if ARowToDelete = RowCount - 1 then begin
Row := Row - 1;
RowCount := RowCount - 1;
Row := RowCount - 1;
end //if
else begin
for ii := ARowToDelete to RowCount - 1 do begin
for jj := 0 to ColCount - 1 do begin
Objects[jj, ii] := Objects[jj, ii + 1];
Cells[jj, ii] := Cells[jj, ii + 1];
end; //for jj
end; //for ii
RowCount := RowCount - 1;
end; //else
end; //with

end;


Kaban   (2002-06-26 16:28:00) [3]

я так понимаю чтобы удалить строку в StringGrid нужно все строки подтянуть вверх и уменьшить их количество на 1. Просто так удалить не удасться.


Наверх

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