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

Вниз

Событие открытия нового окна в TWebbrowser   Найти похожие ветки 

 
dreams   (2004-04-16 07:40) [0]

У меня MDI приложение ( интернет браузер, что то все заболели написанием браузеров :)  )  В общем если пользователь щёлкнул на ссылке которая открывает другое окно ( либо при нажатии удерживая shift + Ctrl ) то открываеться IE :(

В конфиренциях я нашёл решение : Обрабатывать событие OnNewWindow2

Cancel:=true; // не даёт запуститься ещё одному окну

Вот у этого события есть переменная : ppDisp типа IDispatch;

Вопрос : мне нужно создать новое окно и передать данные из ppDisp
в новую копию Twebbrewser. Я например могу запихать ppDisp в переменную типа variant, как при создании нового компонента Twebbrowser запихать в него ppDisp ? чтобы он открыл ссылку .


 
SergP ©   (2004-04-16 08:32) [1]

А почему бы тебе в OnNewWindow2 не создавать сразу второй tWebbrowser и делать далее то что ты хочешь?


 
SergP ©   (2004-04-16 08:33) [2]

Да и не так далеко есть аналогичный топик. Почитай там. На данный момент он скорее всего на второй странице, т.е. далеко еще не ушел...


 
dreams   (2004-04-16 09:11) [3]

> SergP  

я создаю не второй twebbrewser ! а 2 MDI форму на которой он расположен ! а если создавать форму из другой формы то созданая форма будет думать что родитель её не главная ворма а только что её создавшая , что приведёт к тому что если закроешь 1 форму то закроеться и 2 :(

По этому я актевезирую процедуру создания новой формы которая находиться в главной форме приложения, а фот передать туда  ppDisp типа IDispatch не могу :(


 
dreams   (2004-04-17 08:19) [4]

Люди подскажите кто знает ... блин 3 день с этим вопросом мучаюсь :(


 
SergP ©   (2004-04-17 14:11) [5]

Я не работал с MDI формами, поэтому ничего толкового подсказать не могу, но судя по твоей проблеме:

>а если создавать форму из другой формы то созданая форма будет думать что
>родитель её не главная ворма а только что её создавшая , что приведёт к
>тому что если закроешь 1 форму то закроеться и 2 :(

есть несколько мыслей:

1. А разве нельзя изменить родителя?

2. В процедуре-обработчике события TWebbrowser"а  сначала вызвать процедуру для создания новой формы и браузера на ней, а затем передать ppDisp. Если будут проблемы с созданиемновой формы, то попробуй сделать вызов той процедуры через SendMessage.


 
nikkie ©   (2004-04-17 14:18) [6]

с созданием форм проблем нет кроме собственных рук
как и с передачей IDispatch впрочем



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

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

Наверх




Память: 0.48 MB
Время: 0.021 c
14-1084555929
Knight
2004-05-14 21:32
2004.06.06
Есть ли возможность узнать какое приложение держит файл?


9-1076330836
Closer
2004-02-09 15:47
2004.06.06
Завершение работы с GLUT


14-1085115137
тихий вовочка
2004-05-21 08:52
2004.06.06
TParser


1-1085208132
Leaner
2004-05-22 10:42
2004.06.06
Дозапись в PByte


3-1084539981
Kinda
2004-05-14 17:06
2004.06.06
Округление чисел