в справке delphi про удаление компонент написано
Цитата:
Never explicitly free a component in one of its own event handlers, nor free a component from the event handler of a component that it owns or contains.
|
ниже про удаление формы из обработчика события самой формы сказано:
Цитата:
To destroy a form, call its Release method. Release waits for all the form’s event handlers and the event handlers of the form’s components to finish executing before destroying the form.
|
А как же все таки мне удалить компонент из обработчика его собственного события, например, чтобы кнопка удалялась при клике по ней? Метод Release для компонентов не определен, вроде как.
Делаю так: в свойстве объекта формы держу массив array of TObject, куда заношу те объекты, которые надо удалить, а из обработчика события Application.onIdle уже удаляю объекты из этого массива методом Free. Есть ли более стандартное решение такой задачи?