Конференция "Основная" » TWebBrowser, как получить коэффициент масштабирования страницы?
 
  • estra (01.08.17 10:57) [0]
    Форумчанам привет!

    Собственно сабж. Пытаюсь сделать так, но ничего не выходит

    procedure TForm1.Button3Click(Sender: TObject);
    var
     vaOut: OLEVariant;
    begin
      WebBrowser1.ExecWB(OLECMDID_OPTICAL_ZOOM, OLECMDEXECOPT_DODEFAULT, Null, vaOut);
    end;

    Интересует именно OLECMDID_OPTICAL_ZOOM (т.к. с OLECMDID_ZOOM проблем нет, но это не то, что мне нужно).
  • estra (01.08.17 16:45) [1]
    По каким-то причинам не удается определить доступность этой команды в WB.

    procedure TForm1.Button1Click(Sender: TObject);
    var
     Flags: TOleEnum;
     s: string;
    begin
      Flags := WebBrowser1.QueryStatusWB(OLECMDID_OPTICAL_ZOOM);

      s := '';
      if Flags and OLECMDF_SUPPORTED = OLECMDF_SUPPORTED then
         s := s + 'Команда поддерживается'#13;
      if Flags and OLECMDF_ENABLED = OLECMDF_ENABLED then
         s := s + 'Команда поддерживается и разрешена'#13;
      if Flags and OLECMDF_LATCHED = OLECMDF_LATCHED then
         s := s + 'Команда – переключатель и сейчас включена'#13;
      if Flags and OLECMDF_NINCHED = OLECMDF_NINCHED then
         s := s + 'Зарезервировано'#13;
      ShowMessage(s);
    end;

    Выдается пустая строка. Не смотря на это изменить коэффициент масштабирования в WB можно, а получить нет... Есть какие-нибудь идеи?
  • Sha © (02.08.17 19:51) [2]
    можно запоминать масштаб после изменения, и потом не потребуется его узнавать
  • estra (03.08.17 09:28) [3]
    Пользователь может изменить этот масштаб с помощью Ctrl + WheelUp/WheelDown, как об этом узнать? Ставить хук или перекрывать оконную процедуру? Это можно, конечно, но, с моей точки зрения, это явный перебор для такой простой задачки, как определение масштаба...
  • Sha © (04.08.17 17:59) [4]
    зачем хук, можно обработать и самостоятельно поменять масштаб
 
Конференция "Основная" » TWebBrowser, как получить коэффициент масштабирования страницы?
Есть новые Нет новых   [118243   +30][b:0][p:0]