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

Вниз

AccessViolation, из-за чего???   Найти похожие ветки 

 
Den[NSP]   (2003-08-09 19:37) [0]

Описываю программку:

Unit1:
Добавлена единственная процедура FormCreate, на форме ничего нет

...
procedure TForm1.FormCreate(Sender: TObject);
var
Var1: Boolean;
begin
Var1 := True;
if Var1 then Form2.Label1.Caption := "1"
else Form2.Label1.Caption := "2";
end;
...


Unit2:
На форму добавлен компонент Label1, процедур нет


при запуске возникает AccessViolation. Из-за чего???
Нечто подобное уже было несколько раз в других программах под Delphi6 и Delphi7. Под Delphi5 никогда не было.


 
Семен Сорокин ©   (2003-08-09 19:51) [1]

Делаешь в OnCreate формы Form1, а формы наверняка AutoCreate, и поэтому Form2 еще не создана, а ты к ней обращаешься: Form2.Label1.Caption - в этом и трабла. И научись пользоваться отладкой (пошаговый выполнением).


 
nikus ©   (2003-08-09 20:01) [2]

Решение сей траблы:
открываешь файл проекта (.dpr)
Меняешь местами строчки
Application.CreateForm(TForm1, Form1);
Application.CreateForm(TForm2, Form2);

Имеешь то что надо =)


 
Anatoly Podgoretsky ©   (2003-08-09 20:05) [3]

AV возможно иметь не будет, но главная форма будет другая. Кроме того у него использование глобальной переменной Form2, которых вполне возможно более одной.


 
Den[NSP]   (2003-08-09 20:21) [4]

Семен Сорокин © подсказал решение по поводу AutoCreate...
TForm1.FormCreate первой строчкой добавляю
Application.CreateForm(TForm2, Form2);и все...

Большое спасибо всем за ответы...

(Третий раз в жизни пишу в конференцию по Delphi, и первый раз получаю ответ)


 
sniknik ©   (2003-08-09 21:54) [5]

по моему проще в TForm1.FormShow код перенести (onShow)

на случай если понадобятся Hide/Show сделать условие на одноразовость. но это не часто нужно можно обойтись



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

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

Наверх




Память: 0.47 MB
Время: 0.015 c
14-81899
R/\MMS†EIN
2003-08-06 12:22
2003.08.25
MUSIC


14-81961
aga
2003-08-06 17:25
2003.08.25
Окно из DLL...


3-81581
alexsc
2003-07-28 16:15
2003.08.25
работа в сетевом режиме


14-81947
Silentor
2003-08-06 20:32
2003.08.25
Разработка клиент-серверных игрушек


3-81592
RDA
2003-07-29 17:22
2003.08.25
Проблема с импортом большого числа записей