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

Как компоненту удалить самого себя?   Найти похожие ветки 

 
афвуд ©   (2003-09-19 19:53) [0]

Проблема такая. У меня есть у формы свойство SelectedComponent.
На каждый компонент формы и на саму форму вешается обработчик на событие OnKeyUp и в этом обработчике если клавиша - это Del? то вызывается метод удаляющий SelectedComponent: и из формы и вообще память освобождает.

Проблема в том, что если метод вызывается из обработчика события именно компонента который у меня SelectedComponent то получается что после отработки метода удаления компонента управление возвращается к обработчику события несуществующего уже компонента. И возникает Exeption.

Фу. Надеюсь понятно обьяснил.


 
jack128 ©   (2003-09-19 20:11) [1]


> Надеюсь понятно обьяснил.

э-э-э Ну в общем ты понял ;-)

Но может поможет вот это

procedure TForm1.Button2Click(Sender: TObject);
begin
Release;
end;


 
Романов Р.В. ©   (2003-09-19 22:10) [2]

Есть 2 варианта
1. Компонент посылает сообщение форме через PostMessage в параметрах которого содержится ссылка на него. А форма его удаляет.
Другая вариация по этому методу это занесение ссылки на компонент в переменную или массив и удаление его в обработчике OnIdle.

2. У формы ставится KeyPreview и компонент удаляется из сообщения формы.



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

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



Память: 0.45 MB
Время: 0.013 c
14-4070
Igorek
2003-09-12 10:41
2003.10.02
Есть идея - Botherer


6-4021
Savage2003
2003-08-02 21:51
2003.10.02
wininet


3-3717
Dream
2003-09-13 14:09
2003.10.02
Как подсчитать общую сумму в 1 колонке ?


1-3962
KEV
2003-09-20 12:27
2003.10.02
Help.


6-4026
Dysan
2003-08-01 15:39
2003.10.02
проблема с FastNet smtp




   Наверх