Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.03.2023, 15:14   #21
leon2009sp
Форумчанин
 
Регистрация: 22.12.2015
Сообщений: 119
Плохо проблема

я загружаю гуглю
Код:
links:=(((TWebBrowser(ASender).document as IHTMLDocument2).activeElement as IHTMLElement).getAttribute('href', 0));
ppDisp:=WebBrowser1.ControlInterface;
TabSheet := TTabSheet.Create(PageControl1);
TabSheet.Caption := links;
TabSheet.PageControl := PageControl1;
WebBrowser := TWebBrowser.Create(Self);
TWinControl(WebBrowser).Parent:=TabSheet;
TWinControl(WebBrowser).Align := alClient;
pagecontrol1.ActivePage:=tabsheet;
WebBrowser.Navigate(links);
но: из первой tabsheet1 у меня открывает в моем браузере:
Код:
ppDisp:=WebBrowser1.ControlInterface;
а которые динамически создаются в других браузерах что можно сделать?
leon2009sp вне форума Ответить с цитированием
Старый 23.03.2023, 15:22   #22
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,285
По умолчанию

Назначать динамически созданному браузеру свой обработчик, тот же, что и у браузера на tabsheet1.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 23.03.2023, 21:02   #23
leon2009sp
Форумчанин
 
Регистрация: 22.12.2015
Сообщений: 119
Счастье 1

я уже пробовал:
Код:
ppDisp:=WebBrowser.ControlInterface;
убрал
Код:
ppDisp:=WebBrowser1.ControlInterface;
leon2009sp вне форума Ответить с цитированием
Старый 23.03.2023, 21:38   #24
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,285
По умолчанию

У меня вполне срабатывает:
Код:
WebBrowser.OnNewWindow2 := WebBrowser1NewWindow2;
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 24.03.2023, 09:23   #25
leon2009sp
Форумчанин
 
Регистрация: 22.12.2015
Сообщений: 119
Сообщение 1

Спасибо!!! везде по на втыкал = сейчас в божий вид приведу и полный исходник закину.
leon2009sp вне форума Ответить с цитированием
Старый 25.03.2023, 08:16   #26
leon2009sp
Форумчанин
 
Регистрация: 22.12.2015
Сообщений: 119
Сообщение тут такое дело

Код:
uses MSHTML_TLB
  var
  IDoc: IHTMLDocument2;  script : string;
begin
Webbrowser1.Document.QueryInterface(IHTMLDocument2, iDoc);
ExecuteScript(iDoc, 'document.login.submit()', 'JavaScript');

WebBrowser.OnNewWindow2 := WebBrowser1NewWindow2;
и
Код:
function ExecuteScript(doc: IHTMLDocument2; script: string; language: string): Boolean;
var
  win: IHTMLWindow2;
  Olelanguage: Olevariant;
begin
  if doc <> nil then
  begin
    try
      win := doc.parentWindow;
      if win <> nil then
      begin
        try
          Olelanguage := language;
          win.ExecScript(script, Olelanguage);
        finally
          win := nil;
        end;
      end;
    finally
      doc := nil;
    end;
  end;
end;
не фурычит может я не туда написал?
leon2009sp вне форума Ответить с цитированием
Старый 25.03.2023, 08:17   #27
leon2009sp
Форумчанин
 
Регистрация: 22.12.2015
Сообщений: 119
Восклицание поправочка

Код:
procedure TForm1.WebBrowser1NewWindow2(ASender: TObject; var ppDisp: IDispatch;
  var Cancel: WordBool);
  var
  IDoc: IHTMLDocument2;  script : string;
 begin
Webbrowser1.Document.QueryInterface(IHTMLDocument2, iDoc);
ExecuteScript(iDoc, 'document.login.submit()', 'JavaScript');
end
leon2009sp вне форума Ответить с цитированием
Старый 25.03.2023, 17:20   #28
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,285
По умолчанию

В последнем коде я не вижу, где создаётся новый браузер, а обработчик нужно назначать после его создания.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 26.03.2023, 11:44   #29
leon2009sp
Форумчанин
 
Регистрация: 22.12.2015
Сообщений: 119
Радость ДОК

работает, забываю что IE7 только у меня
leon2009sp вне форума Ответить с цитированием
Старый 26.03.2023, 20:20   #30
leon2009sp
Форумчанин
 
Регистрация: 22.12.2015
Сообщений: 119
Восклицание файл

скачать можно здесь -=СКАЧАТЬ=-
leon2009sp вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как получить из webbrawser'а исходник HTML в memo Marsel737 Общие вопросы Delphi 5 25.11.2009 18:37
save diolog & webbrawser Анастасия123456789 Помощь студентам 1 19.03.2009 08:27