![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Удалить строку из TStringGrid
yakshe © (2002-03-07 23:54:00)В FAQ не нашёл. Вопрос конечно ламерский, но я попал в клинч, не могу сделать хоть тресни. Помогите! Нужно удалить строку из TStringGrid. Пробую (это для первой ячейки вроде, но иначе как?)
TStringGrid.Rows[1].Delete[1];
Пишет: "cannot insert or delete rows from grid".
Заранее спасибо.
Искатель (2002-03-09 14:30:00) [1]Какой флейм поднялся из-за тривиально решаемой проблемы. Никогда бы не подумал.
MBo (2002-03-09 08:05:00) [2]>помощью процедуры Delete строку удалить
свойство Rows - типа TStrings, так что Delete[i] должно, как кажется, удалять содержимое ячейки, на самом же деле это запрещенная по понятным причинам операция (InvalidOp). Однако многие другие функции TStrings для Rows и Сols реализованы.
Anatoly Podgoretsky (2002-03-09 02:30:00) [3]Builder © (09.03.02 02:18)
Зачем делать не нужную работу, всплывет, не всплывет, вот когда будущее настанет, тогда и инициализировать.
Builder (2002-03-09 02:18:00) [4]А как насчет того, что этим Вы не убиваете инфу, которая там лежит и если увеличиться RowCount, то она всплывет.
Затирать нужно(на будущее).
Anatoly Podgoretsky (2002-03-08 21:28:00) [5]Нет, перемещай следующие на место удаляемой и RowCount:=RowCount-1;
yakshe (2002-03-08 12:20:00) [6]Я имел ввиду, а можно ли с помощью процедуры Delete строку удалить?
Anatoly Podgoretsky (2002-03-08 08:05:00) [7]Как что, ругается "cannot insert or delete rows from grid"
yakshe (2002-03-08 00:56:00) [8]to Искатель
Большое спасибо. Получилось.
И как я сам не догадался))))
P.S. А интересно, что делает Delete?
Искатель (2002-03-08 00:38:00) [9]несколько перепутал - вместо Rows поставил Row
for i:=k to RowCount-2 do
Rows[i]:=Rows[i+1];
Искатель (2002-03-08 00:32:00) [10]// пусть k - номер удаляемой строки
// предварительно перемещаем все строки с k-ой на одну наверх
for i:=k to RowCount-2 do
Row[i]:=Row[i+1];
// потом уменьшаем количество строк
RowCount:=RowCount-1;
yakshe (2002-03-08 00:16:00) [11]to Искатель
>Изменение количества строк в StringGrid производится через >свойство RowCount
Нужно удалить именно указанную строку (например выделенную). RowCount изменяет кол-во строк вообще.
С уважением.
Искатель (2002-03-07 23:58:00) [12]Изменение количества строк в StringGrid производится через свойство RowCount