Форум: "Основная";
Поиск по всему сайту: 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.019 c
7-32356           Строр                 2001-11-04 19:00  2002.02.11  
Тоже про форматирование...


3-32175           HydraMarat            2002-01-16 23:23  2002.02.11  
Добавление записей и значений через SQL


14-32325          NLO                   2001-12-20 14:18  2002.02.11  
ZIP


14-32328          Abajun                2001-12-21 13:35  2002.02.11  
Документ word


4-32374           iyalosovetsky         2001-12-05 19:08  2002.02.11  
авторизация в w2k