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

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

изменить область видимости метода


Kray1 ©   (2005-10-19 14:11:00) 

Хочу сделать не видимым для других форм метод формы ShowModal.
Нашел такой путь:

Type
 TForm1 = class(TForm)
 private
   function ShowModal: Integer; override;
 end;

function TForm1.ShowModal: Integer;
begin
 Result := inherited ShowModal;
end;

какие есть другие способы изменения области видимости  методов объектов?
Что не корректного есть в этом методе?

Причина: в большом проекте много обращений, хочу что бы в дальнейшем никогда и никто не вызвал метод ShowModal формы из других модулей, только через спец. методы


Kray   (2005-10-19 17:22:00) [1]

всем спасибо - все понятно


Юрий Зотов   (2005-10-19 15:41:00) [2]

> Kray1   (19.10.05 14:11)  

> Что не корректного есть в этом методе?

То, что он ничего не изменит.

> хочу что бы в дальнейшем никогда и никто не вызвал метод ShowModal
> формы из других модулей, только через спец. методы

Перекройте ShowModal и в нем, не вызывая унаследованного ShowModal, просто возбуждайте исключение (больше ничего). А унаследованный ShowModal вызывайте из Ваших спецметодов.

И получится как раз то, что Вам нужно, да еще и с автоматическим обнаружением прямого вызова ShowModal.


Amoeba   (2005-10-19 15:13:00) [3]

Сузить область видимости метода нельзя. RTFM.


Экспериментатор   (2005-10-19 15:12:00) [4]

никак


Kray   (2005-10-19 14:58:00) [5]

to Digitman ©
как тогда правильно изменить область видимости метода?


Digitman   (2005-10-19 14:16:00) [6]


> Что не корректного есть в этом методе?


этот способ не имеет ничего общего с изменением области видимости.


Наверх

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