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

Вниз

Что-то с памятью моей стало! Assigned ли?   Найти похожие ветки 

 
WebErr ©   (2004-02-24 16:16) [0]

В общем так:

{$B-}
if Assigned(AddMedicsForm) and (TComponent(AddMedicsForm.Owner) = AOwner) then
begin
AddMedicsForm.Show;
if AddMedicsForm.WindowState = wsMinimized then
AddMedicsForm.WindowState := wsNormal;
end else
begin
AddMedicsForm := TAddMedicsForm.Create(AOwner);
AddMedicsForm.FormCreate(AOwner);
end;

в строке 2 сразу (но не всегда!) выдаёт EAccesViolation, сразу на проверке условия на Owner! К чему это он, и как от этого избавиться?


 
Anatoly Podgoretsky ©   (2004-02-24 16:19) [1]

Или он Assigned или выставлены соответсвующий флаги обработки комплексных выражений


 
WebErr ©   (2004-02-24 16:23) [2]

[1] Странный ответ, так {$B-} же!


 
WebErr ©   (2004-02-24 16:42) [3]

А, всё, понял! Так оно и есть! Теперь даже работает! Спасибо! Просто при высвобождении памяти, Дель не всегда обнуляет указатель. Я второй раз открывал окно и происходило выполнение запретного условия Assigned(AddMedicsForm). Решилось всё очень просто:

procedure TAddMedicsForm.FormDestroy(Sender: TObject);
begin
AddMedicsForm := nil;
end;


 
Anatoly Podgoretsky ©   (2004-02-24 16:51) [4]

WebErr © (24.02.04 16:23) [2]
Нет не странный, он был бы странным если бы ты это указал в вопроса, а так абсолютно нормальны, это вопрос странный с неполными данными.

Дельфи никогда не обнуляет указатели на объекты, поскольку она про все их них не знает и не знает самого главного когда обнулять!

С учетом уточнения у тебя остается первый вариант оно Assigned можешь теперь в этом не сомневаться. А вот сделать не Assigned твоя забота.


 
Skier ©   (2004-02-24 16:53) [5]

>WebErr
Есть ещё флажок csDestroying в свойстве ComponentState.
Иногда бывает весьма полезен...


 
MBo ©   (2004-02-24 17:11) [6]

>Skier
???


 
Skier ©   (2004-02-24 17:21) [7]

А не надо обращаться к полям компонента когда сам компонент
"is about to be destroyed."


 
WebErr ©   (2004-02-24 17:27) [8]

Чтобы всё на свете знать надо в Форум забредать! Спасибо всем!)



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

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

Наверх




Память: 0.48 MB
Время: 0.015 c
11-12302
Stargazer
2003-06-19 00:26
2004.03.05
KOL2FPC - проблемы с тестом TestKol3.dpr


14-12497
Думкин
2004-02-13 06:04
2004.03.05
С днем рождения! 13 февраля.


14-12493
тихий вовочка
2004-02-14 10:57
2004.03.05
QNX


7-12567
Arsenij
2003-12-17 16:26
2004.03.05
Обмен данными через COM порт


14-12526
Nous Mellon
2004-02-11 19:22
2004.03.05
Как вы относитесь к творчеству Бориса Акунина?