Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.04.16;
Скачать: CL | DM;

Вниз

изменить область видимости метода   Найти похожие ветки 

 
Kray1   (2005-10-19 14:11) [0]

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

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

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

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

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


 
Digitman ©   (2005-10-19 14:16) [1]


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


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


 
Kray ©   (2005-10-19 14:58) [2]

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


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

никак


 
Amoeba ©   (2005-10-19 15:13) [4]

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


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

> Kray1   (19.10.05 14:11)  

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

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

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

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

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


 
Kray ©   (2005-10-19 17:22) [6]

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



Страницы: 1 вся ветка

Текущий архив: 2006.04.16;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.054 c
5-1129761486
bosia
2005-10-20 02:38
2006.04.16
Проблема перехода из режима Design Time в Run Time


1-1141375970
MegaVolt
2006-03-03 11:52
2006.04.16
Куда делась память?


4-1138280826
Kolan
2006-01-26 16:07
2006.04.16
Помогите разобраться с небольшим участком код...


4-1138459145
maxim161
2006-01-28 17:39
2006.04.16
Отправка сообщений процессу


3-1140346654
mif-e
2006-02-19 13:57
2006.04.16
Как делокализовать БД?