Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.10.2010, 18:23   #11
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,210
По умолчанию

Чтобы я без вас делал коллеги, спасибо вам . Вроде пока работает. Почему у меня не работало - хз.
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 29.05.2013, 10:18   #12
GreyW
Новичок
Джуниор
 
Регистрация: 29.05.2013
Сообщений: 1
По умолчанию

Цитата:
Сообщение от mihali4 Посмотреть сообщение
Подсмотрел в инете изящное решение:

Код:
type
  THackGrid = class(TStringGrid);

procedure TForm1.Button1Click(Sender: TObject); 
begi
  THackGrid(StringGrid1).DeleteRow(StringGrid1.Row);
end;
1. Если выношу в отдельный модуль почему-то перестаёт работать.
В чем может быть дело? Как вынести в отдельный модуль?

2. Я новичок в программировании и прошу знающих объяснить как работают круглые скобки после класса а именно Класс-потомок(Объект-родителя) или в примере THackGrid(StringGrid1). Т.е. почему мы не создаем и не инициализируем объект класса THackGrid? Что-то я тут запутался.

Последний раз редактировалось GreyW; 29.05.2013 в 11:15. Причина: уточнение
GreyW вне форума Ответить с цитированием
Старый 30.05.2013, 09:12   #13
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,899
По умолчанию

Код:
type
  THackGrid = class(TStringGrid)
  published
    procedure DeleteRow;
  end;
Вроде так, чтобы вынести в отдельный модуль, пишу по памяти, могу ошибаться, т.к. наверное такое позволительно только для свойств, тогда придётся писать
Код:
 public
    procedure DeleteRow(Index: Integer);
и добавить в модуль тело данной процедуры из стандартного Grids.pas
Использование скобок в данном случае - операция явного преобразования (explicit cast), мы к уже существующему на форме объекту стринггрид обращаемся как будто к его наследнику (за счёт каста).

Последний раз редактировалось phomm; 30.05.2013 в 09:19.
phomm вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Удаление пустых строк в таблице Semen90 Microsoft Office Word 24 14.07.2022 12:28
Удаление пустых и повторяющихся строк Marsel737 Общие вопросы Delphi 5 03.12.2009 00:58
Удаление "повторяющихся" строк zzz007 Microsoft Office Excel 2 03.09.2009 05:01
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" aleksei78 Microsoft Office Excel 13 25.08.2009 12:04
Считывание строк из файла. перемещение по строкам "веред"-"назад" Larkin. Помощь студентам 2 15.06.2009 17:58