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

Вниз

Модальная форма в ActiveX под IE   Найти похожие ветки 

 
Роман   (2004-12-16 15:10) [0]

Собственно сабж, как показать, вернее показываться она показывается, но при этом можно выполнять действия на страничке IE, а этого не хочется, заранее спасибо!


 
Роман   (2004-12-17 13:22) [1]

Разобрался, решил написать, вдруг кому-нибудь понадобится.
помогли следующие изменения TControl:
добавление в public свойства OwnerWindowHandle : HWND в него я после NewForm прописываю хендл окна IE в теле функции
function TControl.CreateWindow: Boolean;
строчку
Params.WndParent := GetParentWnd( True );
заменил на
if OwnerWindowHandle<>0
then Params.WndParent := OwnerWindowHandle
else Params.WndParent := GetParentWnd( True );
(Все таки зря убрали отдельную функцию CreateParams не пришлось бы так извращаться)
далее вызов ShowModal обрамляю в

 ActiveWindow := GetActiveWindow;   //ActiveWindow : HWND;
 EnableWindow(F.OwnerWindowHandle, false);
 F.ShowModal
 EnableWindow(F.OwnerWindowHandle, true);
 SetActiveWindow(ActiveWindow);

правда для этого пришлось выключить {$DEFINE ASM_VERSION} т.к. не силен я в ассемблере:( кстати может напишет кто ассемблерный код этого изменения?

У меня просьба к разработчикам, как-нибудь учесть в будущем релизе проблемку с которой я столкнулся и либо вынести CreateParams либо как то еще предусмотреть вариант когда родителем может буть не KOLовский объект. Странно что написание ActiveX на KOL так мало освещено, ведь именно здесь очень важен размер модуля...



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

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

Наверх




Память: 0.46 MB
Время: 0.059 c
1-1120042840
Shuma
2005-06-29 15:00
2005.07.18
RichEdit - единицы измерения


14-1119816163
P.N.P.
2005-06-27 00:02
2005.07.18
Запись данных на CD


5-1089878644
Sandman25
2004-07-15 12:04
2005.07.18
TFont в качестве property


8-1111421913
FlyingHero
2005-03-21 19:18
2005.07.18
Уменьшение размеров JPEG картинки


1-1119693968
Duck
2005-06-25 14:06
2005.07.18
Освобождение памяти