Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.02.11;
Скачать: [xml.tar.bz2];




Вниз

Удаление строки в Stringgrid 


Rash   (2002-01-28 14:48) [0]

Подскажите, пожалуйста:
if (key=VK_DELETE)
then if (shift = ([ssCtrl]))
then begin
grid.rows[grid.row].delete(grid.row)
end
else grid.Cells[grid.col,grid.row]:="";
По ctrl-Del выдается ошибка - нельзя удалить колонку или строку.
Как здесь нужно использовать Delete? Или проще переприсвоить значения в сетке? (Сетка используется для ввода перечня деталей в заказе).



MBo   (2002-01-28 14:58) [1]

http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1012079550&n=0



Rash   (2002-01-28 15:46) [2]

Спасибо! В принципе, так и думала. Получается, непосредственно удалить строку нельзя? А зачем тогда метод Delete?

В справке есть: TStringGridStrings.Delete



MBo   (2002-01-28 16:18) [3]

метод класса TStrings delete уничтожает 1 строку из списка - в данном случае это не работает, обращение или ко всей строке как к TStrings или к ячейке - String.
Вообще-то в TCustomGrid есть protected метод DeleteRow, недоступный у его наследников в лоб. Хитрость вот такая:
в своем модуле
THackGrid=class(TCustomGrid);

...
THackGrid(StringGrid1).DeleteRow(StringGrid1.Row);



Rash   (2002-01-28 18:13) [4]

Спасибо!!!




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.02.11;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.018 c
3-32166           ГС ТОФ                2002-01-16 14:38  2002.02.11  
Пропала форма в проекте


1-32226           madcap                2002-01-27 01:26  2002.02.11  
Функция не возвращает TStringList


6-32314           Alex2x                2001-09-05 15:17  2002.02.11  
Сетевое копирование


1-32276           IronHawk              2002-01-24 16:35  2002.02.11  
И снова проблема .... многоуважаемые Мастера ! ! !


6-32304           vvr                   2001-11-21 14:11  2002.02.11  
сети