| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: WinAPI и системное программирование > Как отследить уничтожение Handle у TWinControl |
| Автор: RomanEEP 8.8.2007, 08:15 |
| override DestroyWindowHandle не помогает. Возможно это связано, что Control - MDIChild окно. Как отследить уничтожение его Handle? |
| Автор: DBZ 8.8.2007, 08:33 |
| Например так: WinControl1.Tag:=SetWindowLong(WinControl1.Handle, GWL_WNDPROC, longInt(@NewWP)); ... function NewWP(hWnd: HWND; Msg: LongInt; wParam, lParam: Longint): longInt; stdcall; begin if Msg = WM_DESTROY then begin // Окно удаляется!!! Реагируем... end; Result:=CallWindowProc(Pointer(WinControl1.Tag), hWnd, Msg, wParam, lParam); end; |
| Автор: RomanEEP 8.8.2007, 09:23 |
| Спасибо Все же интересно понять, почему не срабатывает DestroyWindowHandle и, кстати, WMDestroy(...); override; тоже |