Главная страница
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.029 c
2-1157225031
Keni
2006-09-02 23:23
2006.09.24
файл в EXE


2-1157620743
fly_mer
2006-09-07 13:19
2006.09.24
Тип TRecord и его копирование...


15-1157208021
santey
2006-09-02 18:40
2006.09.24
сохранение структуры(записи)


3-1153899026
SergP.
2006-07-26 11:30
2006.09.24
проблема с запросом (count(*)+group by)


2-1157619572
Виталька 2006
2006-09-07 12:59
2006.09.24
Две формы одного класса