Главная страница
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.025 c
8-81847
lmd
2003-04-23 12:10
2003.08.25
Как добавить картинку в RichText ?


3-81591
dimonka
2003-07-29 22:39
2003.08.25
Перемещение данных


1-81653
go
2003-08-12 11:25
2003.08.25
install D7


1-81754
Vulko
2003-08-09 03:12
2003.08.25
Почему компилятору не нравится эта строка?


1-81716
Алексей Петухов
2003-08-11 06:34
2003.08.25
TRadioGroup и OnKeyPress