Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Delphi Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 Самый простой HTMLView  [new]
alekcvp
Member

Откуда:
Сообщений: 1056
Собственно нужен сабж с целью отображения примитивного HTML с интегрированными картинками (<img src="data:image/png;base64,...">).

Из того что пробовал:
  • TWebBrowser - почти идеальный вариант, но он пытается переходить по ссылкам (даже в автономном режиме), а мне надо чтобы был только просмотр и никакого интерактива.
  • THTMLViewer - когда что-то меняется и изменяется размер окна THTMLViewer - отрисовка начинает "подтормаживать" и мерцать (причём не только у него, а у всей формы), мне это не нравится.
  • DelphiCEF 3/4 - размер дополнительных библиотек, которые необходимо таскать с приложением (50+ мегабайт), не радует вообще, так что даже пробовать не стал.

    Может кто-то ещё что-нибудь посоветует? Бесплатное или с адекватной ценой для некоммерческого ПО (1-2к деревянных).
  • 4 июн 18, 13:54    [21466510]     Ответить | Цитировать Сообщить модератору
     Re: Самый простой HTMLView  [new]
    defecator
    Member

    Откуда:
    Сообщений: 38477
    THTMLViewer или THTMLFrame
    ничего не тормозит и не моргает
    4 июн 18, 14:00    [21466536]     Ответить | Цитировать Сообщить модератору
     Re: Самый простой HTMLView  [new]
    alekcvp
    Member

    Откуда:
    Сообщений: 1056
    defecator,
    Именно у них и подтормаживает.
    4 июн 18, 14:02    [21466552]     Ответить | Цитировать Сообщить модератору
     Re: Самый простой HTMLView  [new]
    defecator
    Member

    Откуда:
    Сообщений: 38477
    alekcvp
    defecator,
    Именно у них и подтормаживает.

    ни разу не видел такого эффекта
    4 июн 18, 14:09    [21466565]     Ответить | Цитировать Сообщить модератору
     Re: Самый простой HTMLView  [new]
    alekcvp
    Member

    Откуда:
    Сообщений: 1056
    defecator,

    Без него (кликабельно):
    Картинка с другого сайта.

    С ним:
    Картинка с другого сайта.
    4 июн 18, 14:21    [21466619]     Ответить | Цитировать Сообщить модератору
     Re: Самый простой HTMLView  [new]
    Гаджимурадов Рустам
    Member

    Откуда:
    Сообщений: 58926
    alekcvp> Из того что пробовал:

    А либа Свириденкова сабж не умеет?

    Posted via ActualForum NNTP Server 1.5

    4 июн 18, 14:25    [21466638]     Ответить | Цитировать Сообщить модератору
     Re: Самый простой HTMLView  [new]
    alekcvp
    Member

    Откуда:
    Сообщений: 1056
    У меня такое ощущение, что он, при изменении размеров, вместо Invalidate делает принудительный Repaint всей форме...
    4 июн 18, 14:25    [21466644]     Ответить | Цитировать Сообщить модератору
     Re: Самый простой HTMLView  [new]
    alekcvp
    Member

    Откуда:
    Сообщений: 1056
    Гаджимурадов Рустам
    А либа Свириденкова сабж не умеет?

    Там цена не для физлиц :)
    4 июн 18, 14:26    [21466647]     Ответить | Цитировать Сообщить модератору
     Re: Самый простой HTMLView  [new]
    alekcvp
    Member

    Откуда:
    Сообщений: 1056
    В принципе, я буду полностью счастлив (по этому вопросу) если мне кто-нибудь подскажет: как в TWebBrowser запретить любой интерактив со страницей, кроме прокрутки.
    4 июн 18, 14:28    [21466664]     Ответить | Цитировать Сообщить модератору
     Re: Самый простой HTMLView  [new]
    defecator
    Member

    Откуда:
    Сообщений: 38477
    alekcvp
    defecator,

    Без него (кликабельно):
    Картинка с другого сайта.

    С ним:
    Картинка с другого сайта.


    смотри, а у меня ничего не моргает
    4 июн 18, 14:40    [21466753]     Ответить | Цитировать Сообщить модератору
     Re: Самый простой HTMLView  [new]
    alekcvp
    Member

    Откуда:
    Сообщений: 1056
    defecator
    смотри, а у меня ничего не моргает

    Ну тогда расскажи как ты этого добился. У меня панель, на которой кнопки лежат - DoubleBuffered, причём в эту панель встроен фрейм, а уже на нём - кнопки и всё прочее. Всю форму DoubleBuffered делать бы не хотелось, оно в Vcl несколько глючное.
    4 июн 18, 14:43    [21466767]     Ответить | Цитировать Сообщить модератору
     Re: Самый простой HTMLView  [new]
    чччД__
    Guest
    alekcvp
    В принципе, я буду полностью счастлив (по этому вопросу) если мне кто-нибудь подскажет: как в TWebBrowser запретить любой интерактив со страницей, кроме прокрутки.


    Я ни разу не пользовался TWebBrowser, но 2 мин экспериментов:

    В OnBeforeNavigate2():

     Cancel := URL <> 'http://sql.ru/'
    
    4 июн 18, 14:43    [21466769]     Ответить | Цитировать Сообщить модератору
     Re: Самый простой HTMLView  [new]
    defecator
    Member

    Откуда:
    Сообщений: 38477
    alekcvp
    defecator
    смотри, а у меня ничего не моргает

    Ну тогда расскажи как ты этого добился. У меня панель, на которой кнопки лежат - DoubleBuffered, причём в эту панель встроен фрейм, а уже на нём - кнопки и всё прочее. Всю форму DoubleBuffered делать бы не хотелось, оно в Vcl несколько глючное.

    я же говорю, что никогда у меня не моргало, а у тебя, может быть, не HTMLViewer виноват,
    а то, на чём он лежит - оно и заставляет перерисоваться фсю форму, например.

    Вот мой проект, там и нет ничего

    К сообщению приложен файл (Test_HTMLViewer.zip - 60Kb) cкачать
    4 июн 18, 14:46    [21466780]     Ответить | Цитировать Сообщить модератору
     Re: Самый простой HTMLView  [new]
    alekcvp
    Member

    Откуда:
    Сообщений: 1056
    чччД__
    В OnBeforeNavigate2():

    Ага, а OnPopupMenu() у него нету и пустое назначить не помогает...
    4 июн 18, 14:53    [21466809]     Ответить | Цитировать Сообщить модератору
     Re: Самый простой HTMLView  [new]
    чччД__
    Guest
    alekcvp
    чччД__
    В OnBeforeNavigate2():

    Ага, а OnPopupMenu() у него нету и пустое назначить не помогает...


    А тут что за проблема?
    4 июн 18, 15:00    [21466865]     Ответить | Цитировать Сообщить модератору
     Re: Самый простой HTMLView  [new]
    alekcvp
    Member

    Откуда:
    Сообщений: 1056
    defecator
    я же говорю, что никогда у меня не моргало, а у тебя, может быть, не HTMLViewer виноват,
    а то, на чём он лежит - оно и заставляет перерисоваться фсю форму, например.
    Вот мой проект, там и нет ничего

    Да, походу это из-за Align такие мигания были, сделал фрейму фиксированное положение - мерцать перестало.
    4 июн 18, 15:11    [21466910]     Ответить | Цитировать Сообщить модератору
     Re: Самый простой HTMLView  [new]
    alekcvp
    Member

    Откуда:
    Сообщений: 1056
    чччД__
    alekcvp
    пропущено...
    Ага, а OnPopupMenu() у него нету и пустое назначить не помогает...

    А тут что за проблема?

    Всплывающее меню же, стандартное для IE. Но я уже решил проблему с THtmlViewer, спасибо.
    4 июн 18, 15:12    [21466913]     Ответить | Цитировать Сообщить модератору
     Re: Самый простой HTMLView  [new]
    defecator
    Member

    Откуда:
    Сообщений: 38477
    alekcvp
    defecator
    я же говорю, что никогда у меня не моргало, а у тебя, может быть, не HTMLViewer виноват,
    а то, на чём он лежит - оно и заставляет перерисоваться фсю форму, например.
    Вот мой проект, там и нет ничего

    Да, походу это из-за Align такие мигания были, сделал фрейму фиксированное положение - мерцать перестало.


    ну вот, видишь, а ты сразу на HTMLViewer грешил ! Картинка с другого сайта.
    4 июн 18, 15:13    [21466918]     Ответить | Цитировать Сообщить модератору
     Re: Самый простой HTMLView  [new]
    Гаджимурадов Рустам
    Member

    Откуда:
    Сообщений: 58926
    alekcvp> Там цена не для физлиц :)

    Да ну что ты как маленький.
    Напиши, попроси скидку.
    В благодарность пообещай
    саксесс-стори написать, сюда
    и на сайт. Все будут довольны.

    Posted via ActualForum NNTP Server 1.5

    4 июн 18, 15:17    [21466945]     Ответить | Цитировать Сообщить модератору
     Re: Самый простой HTMLView  [new]
    чччД__
    Guest
    alekcvp
    чччД__
    пропущено...

    А тут что за проблема?

    Всплывающее меню же, стандартное для IE...


    Непонятно, чем плохо меню IE, ну ладно:


    http://www.delphidabbler.com/articles?article=18&part=4
    https://docs.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/platform-apis/aa770042(v=vs.85)
    4 июн 18, 15:19    [21466958]     Ответить | Цитировать Сообщить модератору
     Re: Самый простой HTMLView  [new]
    чччД__
    Guest
    чччД__
    alekcvp
    пропущено...

    Всплывающее меню же, стандартное для IE...


    Непонятно, чем плохо меню IE, ну ладно:


    http://www.delphidabbler.com/articles?article=18&part=4
    https://docs.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/platform-apis/aa770042(v=vs.85)


    Блин, да вообще полно инфы по TWebBrowser...
    4 июн 18, 15:21    [21466967]     Ответить | Цитировать Сообщить модератору
     Re: Самый простой HTMLView  [new]
    Dimonka
    Member

    Откуда:
    Сообщений: 1026
    Есть ещё такая штука:

    https://sciter.com/
    https://sciter.com/sciter-delphi-wrapper/

    Компактная и неплохо работает. Правда практической инфы мало.
    4 июн 18, 16:17    [21467202]     Ответить | Цитировать Сообщить модератору
     Re: Самый простой HTMLView  [new]
    alekcvp
    Member

    Откуда:
    Сообщений: 1056
    Dimonka,

    Прикольная штука, но странно что при заявленной поддержке HTML5 он не знает, что после </div> идёт перенос строки...
    4 июн 18, 17:08    [21467399]     Ответить | Цитировать Сообщить модератору
     Re: Самый простой HTMLView  [new]
    Dimonka
    Member

    Откуда:
    Сообщений: 1026
    alekcvp
    Dimonka,

    Прикольная штука, но странно что при заявленной поддержке HTML5 он не знает, что после </div> идёт перенос строки...
    Ну так это зависит от дефолтовых настроек, наверное. Укажи правильный "display" для своего и будет тебе перенос.
    4 июн 18, 17:10    [21467410]     Ответить | Цитировать Сообщить модератору
     Re: Самый простой HTMLView  [new]
    alekcvp
    Member

    Откуда:
    Сообщений: 1056
    Dimonka,
    Да нет, я просто примеры позапускал, которые с ним идут. Ни один не отрисовал тестовый HTML правильно.
    4 июн 18, 17:19    [21467451]     Ответить | Цитировать Сообщить модератору
    Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
    Все форумы / Delphi Ответить