26 (edited by agatlogic101 2019-12-05 18:33:31)

Re: WebBrowser

Скрипт иногда срабатывает частично. То есть может открыть браузер с адрессом как обычную программу, и только на 3 или 4 раз заключить его в форму. Редко бывало что-бы срабатывал с первого раза. Но такое было. Как то это можно подправить?

Re: WebBrowser

agatlogic101 wrote:

Скрипт иногда срабатывает частично. То есть может открыть браузер с адрессом как обычную программу, и только на 3 или 4 раз заключить его в форму. Редко бывало что-бы срабатывал с первого раза. Но такое было. Как то это можно подправить?

Причина в том, что скрипт успевает отработать поиск окна браузера до его загрузки.
Чтобы найти оптимальное время поиска можно поэкпериментировать со значением переменной Max.

Re: WebBrowser

Да, так стало лучше. А какие еще браузеры поддерживает? Просто если у меня гуглхром основной браузер, и я им пользуюсь в этот момент то возникают неудобства

Re: WebBrowser

agatlogic101 wrote:

А какие еще браузеры поддерживает?

Любые. Надо только в коде указать что запускать и что искать.

Например, для Firefox в скрипте надо изменить три строчки:

...
Openfile('ya.ru', 'firefox');
...
h := FindWindow('MozillaWindowClass', '');
...
SetParent( FindWindow('MozillaWindowClass', ''), Form1.Panel1.Handle);

30 (edited by agatlogic101 2020-04-30 13:47:13)

Re: WebBrowser

DriveSoft wrote:

В принципе можно

procedure Form1_Button1_OnClick (Sender: TObject; var Cancel: boolean);
var
  h: integer;
  Max: integer;
begin
  Openfile('ya.ru', 'chrome');
  // finding window's
  h := 0;
  Max := 20;
  while (h = 0) and (Max > 0) do
  begin
    h := FindWindow('Chrome_WidgetWin_1', ''); // find window using caption
    Dec(Max);
    Sleep(50);
  end;
  if h <> 0 then
  begin
    SetWindowPos( h, 0, -7, -30, 0, 0, SWP_NOSIZE); // set position
    SetParent( FindWindow('Chrome_WidgetWin_1', ''), Form1.Panel1.Handle);
  end;
end;

видимо у скайпа также используется хром для интерфейса, поэтому есть вероятность, что вместо хрома, переместиться скайп )

Если браузер уже открыт, то он создаёт в нём новое окно или захватывает его полностью. Получается нужно завести отдельный браузер для программы. а отдельный для сёрфинга в интернете? Или есть способ что бы он допустим захватывал только отдельно появившиюся вкладку?