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

Вниз

Вовремя исполнения Form:=nil   Найти похожие ветки 

 
Всилий   (2006-08-10 12:28) [0]

Не могу понять почему вовремя работы формы сама форма равна nil.

Unit1

procedure TForm1.btn_SomeClick(Sender: TObject);
begin
 with Tfrm_Some.Create(Self) do
 try
   ShowModal;
 finally
   Free;
 end;
end;


SomeFormUnit

procedure Tfrm_Some.ButtonClick(Sender: TObject);
begin
 frm_Some.Width:=100; // AV, т.к. frm_Some:=nil
end;


В опциях проекта frm_Some - Available forms


 
Плохиш ©   (2006-08-10 12:33) [1]

frm_Some - это не форма, а переменная типа типизированный указатель.

> procedure Tfrm_Some.ButtonClick(Sender: TObject);
> begin
>  frm_Some.Width:=100; // AV, т.к. frm_Some:=nil
> end;

За такое вырываю руки без разговоров.


 
Ketmar ©   (2006-08-10 12:33) [2]

а чему ещё должны быть равна переменная? что-то я не заметил тут операции присваивания.


 
Desdechado ©   (2006-08-10 12:33) [3]

frm_Some.Width:=100;
перепиши
Width:=100;
или
Self.Width:=100;

есть подозрения, что в области видимости оказалась другая переменная с таким именем.


 
Сергей М. ©   (2006-08-10 12:36) [4]

Не туда смотришь.

В Auto-Create forms нужно искать свою форму.

К тому же ссылки на переменную frm_Some в телах Tfrm_Some-методов вредны и во многих случаях бесполезны/бессмысленны.


 
MaxDAG ©   (2006-08-10 13:10) [5]

Для начала:
- объявить => frm_Some в области видимости TForm1
- потом "frm_Some:= Tfrm_SomeCreate(Self);" там, где и было задумано

Внутри создаваемой формы все ее свойства/методы ВСЕГДА меняй/вызывай через Self.ИзменяемоеСвойство:= Значение;


 
Сергей М. ©   (2006-08-10 13:12) [6]


> MaxDAG ©   (10.08.06 13:10) [5]


> ВСЕГДА меняй/вызывай через Self


Чтой-то вдруг так категорично - "всегда" ?)


 
Kolan ©   (2006-08-10 13:13) [7]


> Чтой-то вдруг так категорично - "всегда" ?)

Это из серии "делить на 0 недьзя" (ц)


 
Джо ©   (2006-08-10 13:15) [8]

> [5] MaxDAG ©   (10.08.06 13:10)
> Внутри создаваемой формы все ее свойства/методы ВСЕГДА меняй/вызывай
> через Self.ИзменяемоеСвойство:= Значение;

Категорично. Но зачем-же Self?


 
MaxDAG ©   (2006-08-10 13:27) [9]

Не хотите, можете не писать
нагляднее так



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

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

Наверх




Память: 0.48 MB
Время: 0.03 c
15-1157435937
sanilo
2006-09-05 09:58
2006.09.24
Программы для рассылки факсов


4-1148412487
Mr tray
2006-05-23 23:28
2006.09.24
из приложения добавить языковую раскладку


3-1153740036
StriderMan
2006-07-24 15:20
2006.09.24
Несколько UPDATE ов одним запросом. Возможно ли?


15-1157381073
Agent13
2006-09-04 18:44
2006.09.24
Глюки винчестера или неудачный запуск Windows


15-1157197093
Stexen
2006-09-02 15:38
2006.09.24
VC++ и дельфи