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

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

наследники


Андрей Молчанов ©   (2005-07-28 22:32:00) 

Здравствуйте!

Вот, задумал я наследник TListView написать. Подскажите, пожалуйста, как в нем заместить процедуры от TCustomListView, TListColumns и TListColumn? Заранее благодарен.


Гаврила   (2005-07-28 23:22:00) [1]

Короче, надо штудировать исходник предка, и смотреть, что можно изменить в поведении при помощи наследника.
По сути, изменить поведение можно только двумя способами - перекрытием виртуальных (или динамических-не важно) методов предка (override), либо же написанием своих обработчиков сообщений.
Статические методы можно перекрывать сколько влезет - только кто ж их вызовет то? Только если сам, из прикладной программы, но тогда это будет уже не изменение поведения, а расширение функциональности.

Вот такой странный пост, но думаю, он в тему.


Андрей Молчанов   (2005-07-28 23:09:00) [2]

Попробую...


P.N.P.   (2005-07-28 23:05:00) [3]

>Андрей Молчанов   (28.07.05 23:03) [4]
>А это можно будет хотя бы в один .pas запихнуть?
Можно.


Андрей Молчанов   (2005-07-28 23:03:00) [4]

Н-да, похоже придется :(
А это можно будет хотя бы в один .pas запихнуть?


P.N.P.   (2005-07-28 23:00:00) [5]

Так тебе придется наследников и для
TListColumn,TListColumns,TCustomHeaderControl пейсать.
А заменить - override (overload,reintroduce etc... по обстоятельствам)


Андрей Молчанов   (2005-07-28 22:54:00) [6]

procedure TCustomHeaderControl.UpdateItem(Message, Index: Integer);
constructor TListColumn.Create(Collection: TCollection);
procedure TListColumns.UpdateCols;
procedure TCustomListView.UpdateColumn(AnIndex: Integer);


P.N.P.   (2005-07-28 22:52:00) [7]

Какие процедуры?


Наверх

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