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

Вниз

Уничтожить TClientSocket после disconnect-а.   Найти похожие ветки 

 
ezorcist   (2006-12-09 20:51) [0]

попробывал написать destroy в OnDisconnect - ошибка. ??


 
Джо ©   (2006-12-09 20:53) [1]

> [0] ezorcist   (09.12.06 20:51)
> попробывал написать destroy в OnDisconnect - ошибка. ??

Уничтожать компонент в его собственном обработчике события — не есть хорошая идея. Стандартный обходной путь: посылать (PostMessage) форме заранее известное сообщение, в его обработчике и уничтожать нужный компонент.


 
Ezorcist   (2006-12-09 20:56) [2]

А можно пример?


 
Джо ©   (2006-12-09 21:15) [3]

> [2] Ezorcist   (09.12.06 20:56)
> А можно пример?

Удаление кнопки в ее собственном обработчике OnClick:

const
 WM_DESTORY_OBJECT = WM_USER + 666;

type
 TForm30 = class(TForm)
   Button1: TButton;
   procedure Button1Click(Sender: TObject);
 private
   procedure WmDestroyObject (var Msg: TMessage);
     message WM_DESTORY_OBJECT;
 end;

var
 Form30: TForm30;

implementation

{$R *.dfm}

{ TForm30 }

procedure TForm30.Button1Click(Sender: TObject);
begin
 PostMessage (Handle,WM_DESTORY_OBJECT,Integer(Sender),0);
end;

procedure TForm30.WmDestroyObject(var Msg: TMessage);
begin
 TObject(Msg.WParam).Free
end;

Аналогично и с любым другим объектом.



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

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

Наверх




Память: 0.47 MB
Время: 0.051 c
15-1166009415
DVM
2006-12-13 14:30
2006.12.31
2 видеокарты с двумя выходами = 4 монитора реально?


1-1163403828
V-A-V
2006-11-13 10:43
2006.12.31
Масштаб изображения


2-1165688668
DiX
2006-12-09 21:24
2006.12.31
Обрезание Currency


2-1166020242
dis12345
2006-12-13 17:30
2006.12.31
перебор Label ов


2-1165821434
makvell
2006-12-11 10:17
2006.12.31
справочная система