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

Вниз

Как узнать на какой адрес будет переход?   Найти похожие ветки 

 
html   (2009-02-03 12:40) [0]

Всем привет!
На форме есть два TWebBrouser
кликаю на первом:
procedure TfMain.WebBrowser1NewWindow2(Sender: TObject;
 var ppDisp: IDispatch; var Cancel: WordBool);
var
 MousePos: TPoint;
 HtmlElement: IHTMLElement;
 ImgElement: IHTMLIMGElement;
 AnchorElement: IHTMLAnchorElement;
 iHTMLDoc: IHtmlDocument2;
begin
 FCurrentLink := "";
 if Supports(WebBrowser1.Document, IHtmlDocument2, iHTMLDoc) then
 begin
   if GetCursorPos(MousePos) then
   begin
     MousePos := WebBrowser1.ScreenToClient(MousePos);
     HtmlElement := iHTMLDoc.ElementFromPoint(MousePos.X, MousePos.Y);
     if Assigned(HtmlElement) then
     begin
       try
         HtmlElement.QueryInterface(IHTMLIMGElement, imgElement);
         if Assigned(imgElement) then
           FCurrentLink := ImgElement.href;
         HtmlElement.QueryInterface(IHTMLAnchorElement, AnchorElement);
         if Assigned(AnchorElement) then
           FCurrentLink := AnchorElement.href;
       except
       end;
     end;
   end;
 end; //}
 ppDisp := WebBrowser2.ControlInterface;
end;

В обработчике OnDocumentComplite WebBrouser2 проверяю

procedure TfMain.WebBrowser2DocumentComplete(Sender: TObject;
 const pDisp: IDispatch; var URL: OleVariant);
begin
 if (FCurrentLink <> string(URL)) then
   Exit;
...

так вот, в первой процедуре не всегда определяется ссылка, на которую происходит переход. Какие еще интерфейся надо сюда вставить:
HtmlElement.QueryInterface(???, );

или можно сделать как-нибудь по другому?


 
html   (2009-02-03 13:22) [1]

обед, что ли?



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

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

Наверх




Память: 0.47 MB
Время: 0.045 c
15-1233095106
паровоз
2009-01-28 01:25
2009.03.29
Применим ли инструмент View CPU для отладки сторонних ехе-шников


15-1232519912
TUser
2009-01-21 09:38
2009.03.29
Большой адронный коллайдер и физические исследования на нем


2-1234184735
Footballer
2009-02-09 16:05
2009.03.29
Записать текстовый файл в exe-файл


15-1232104188
Артур Пирожков
2009-01-16 14:09
2009.03.29
Музыка. Много. Где скачать?


2-1233121683
Vemer
2009-01-28 08:48
2009.03.29
Записать-прочитать файл под WinApi