Перейти к содержанию
Fire Monkey от А до Я

mosesfender

Пользователи
  • Постов

    1
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные mosesfender

  1. Доброго времени суток!
    Поискал по форуму, не нашёл ответа на мой вопрос, поэтому задам таки, хотя, догадываюсь эти грабли не только мне попадались.

    Сюжет такой: использую TWebBrowser. Мне хочется, чтобы в Win и Android работало одинаково.
    Соответственно, для Win использую ShDocVw, для Android - FMX.WebBrowser.

    uses
    .......................
    {$IFDEF MSWINDOWS}
      SHDocVw, Vcl.Controls
    {$ELSE}
      FMX.WebBrowser
    {$ENDIF};
    

    Объект создаю в Run Time, создаётся и там и там нормально, но затык в Parent'e. Там стоит TLayout, в котором он и должен нарисоваться. С Android'ом всё в порядке. В Win - либо ошибка при компиляции, либо в случае вот этого текста - AV как раз в строке где назначается Parent. Сам понимаю, что TWinControl(TLayout) - ахинея полная.
     

      if FBrowser = nil then
      begin
        FBrowser := TWebBrowser.Create(nil);
    {$IFDEF MSWINDOWS}
        TWinControl(FBrowser).Parent := TWinControl(Self.Layout2);
        FBrowser.Align := alClient;
    {$ELSE}
        FBrowser.Parent := Self.Layout2;
        FBrowser.Align := TAlignLayout.alClient;
    {$ENDIF}
      end;
      FBrowser.Navigate(AURL);
    

    Как быть с этим? Научите. В FM я совсем новый человек.
    Понимаю, что TLayout можно для Win заменить на TPanel. Но к чему тогда вообще все визуальные средства, если всё ручонками в RT создавать...

     
×
×
  • Создать...