Форум: "Основная";
Текущий архив: 2005.01.23;
Скачать: [xml.tar.bz2];
ВнизВопрос ? MyForm:TForm.Create(applications); Найти похожие ветки
← →
Sergo_Zero © (2005-01-09 18:01) [0]Имеем две процедуры все на главной форме
procedure MyProc(Sender: TObject);//Создаём новую форму
begin
MyForm1:=TForm.Create(applications);
MyForm.parent:=applications;
.............................
Button1:=TButton.Create(MyForm1);//Создаём новую кнопку
Button1.parent:=MyForm1;
Button1.Onclick:=buttonclick //обрабатываем
MyForm.Show
.............................
end
...............................
procedure buttonclick(Sender: TObject)
begin
with (Sender as TComponent).Owner do
begin
// или DestroyComponents ;
BeforeDestruction; // Ошибка адресфции ...
free
end;
end;
Но когда на главной форме ставиш кокую небудь кнопку по умолчанию
активной то ашибка пропадает или когда вызываешь подобную процедуру кнопкой с главной формы с кнопками типа TSpeedButton фокус проходит но не всегда (речь шла только о кнопках главной формы, кнопки в модальной форме работают любые)
← →
Семен Сорокин © (2005-01-09 22:03) [1]типа уничтожение кнопки при нажатии?
используйте
PostMessage(TWinControl(Sender).Handle, CM_RELEASE, 0, 0)
потому как после onClick проходит еще onMouseUp, и то что в модальной форме работате - еще не факт что там нет ошибки работы с памятью.
Советую пройтись отладчиком в вашем коде если не верите.
← →
jack128 © (2005-01-10 03:22) [2]Sergo_Zero © (09.01.05 18:01)
BeforeDestruction
этот метод не нужно вызывать напрямую..
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2005.01.23;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.037 c