Вниз
Скачать: CL | DM;

ShowModal   Найти похожие ветки 

← →
Igor_thief ©   (2004-03-26 12:29) [0]

Вот столкнулся с такой фишкой: я всегда при закрытии формы использую Action := caFree. По идее это должно освободить ресурсы занимаемые формой по ее закрытию. Но вот чего я вытворил недавно. В OnClose формы прописал Action := caFree. Вызов формы таков: createForm(..) а потом if FOrm.showmodal = mrOk then и обрабатываю данные из компонентов в этой форме, хотя она должна была быть удалена из памяти! Что за глюк?

Раньше я всегда в модальной форме обрабатывал данные при нажатии кнопочки Ок, но теперь решил попробовать сделать как все if траля-ля Showmodal = mr?? then , но сталкнулся с таким глюком!


← →
Nikolay M. ©   (2004-03-26 12:31) [1]

После

> if траля-ля Showmodal = mr?? then

Form1.Release делать не пробовал?


← →
Igor_thief ©   (2004-03-26 13:52) [2]

Nikolay M. ©   (26.03.04 12:31) [1]
Да я знаю что от этого будет эфект, но в книге рекомендуют делать через ашэн.


← →
Cobalt ©   (2004-03-26 22:59) [3]

Возможно, что это  caFree не вызывает немедленного удаления формы. Рекомендую для более детального понимания посмотреть исходники VCL - обработчик события - что происходит после него.


← →
panov ©   (2004-03-26 23:11) [4]

После caFree вызывается метод Release джля формы.
Из Help:

Note: Release returns immediately to the caller. It does not wait for the form to be freed before returning



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.02 c
1-1079954454
BALU1111
2004-03-22 14:20
2004.04.18
Опять TListView


9-1061530372
KeepeR
2003-08-22 09:32
2004.04.18
Онлайновая игра на Delphi


8-1070778728
intell
2003-12-07 09:32
2004.04.18
Как мне сделать Image полупрозрачным?


7-1077002931
UnMi
2004-02-17 10:28
2004.04.18
Вот такое сообщение... :(


14-1080200566
Ega23
2004-03-25 10:42
2004.04.18
По C++ вопрос будет, не бейте сильно :о)




   Наверх