Форум: "Основная";
Текущий архив: 2002.05.02;
Скачать: [xml.tar.bz2];
ВнизПоток -> DLL -> модальная форма. Как закрыть ее? Найти похожие ветки
← →
Nicolas_ (2002-04-18 11:16) [0]В главной программе при нажатии на кнопку SB1 создается поток, который грузит DLL. В ней вызывается функция
procedure PluginExecute(ah: LongWord; cp: TComPort);
begin
OldApp := Application.Handle;
Application.Handle := ah;
FormControl := TFormControl.Create(Application);
with FormControl do begin
ComPort1 := cp;
ShowModal;//главное модальное окно плагина
Free;
end;
Application.Handle := OldApp;
end;
которая показывает модальное окно.
Закрываю его так: жмем снова на SB1, вызывается функция из DLL
procedure PluginClose;
begin
PostMessage(FormControl.Handle, WM_CLOSE, 0, 0);//сообщение
//главному окну плагина
end;
соответсвенно модальное окно закрывается, поток выгружает DLL и завершается. При этом все хоккей.
_НО_ если мы из этого модального окна вызовем другое модальное (например для настройки опций), то при нажатии на кнопку SB1 для выгрузки ничего не происходит. Я понимаю, что сообщение шлется главному окну плагина, а торчит модальное окно опций и пока его не закроешь (окно опций) главное окно не получит сообщений. Посоветуйте пожалуйста, как в этом случае закрывать главное модальное окно плагина?
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.05.02;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.005 c