Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2011.05.08;
Скачать: CL | DM;

Вниз

отложенная загрузка картинки в THTMLViewer/ThtmlLite   Найти похожие ветки 

 
antonn ©   (2011-02-03 03:14) [0]

Может кто работал с компонентами ThtmlLite или THTMLViewer, подскажите как без перегрузки html"я отобразить картинки закачанные позже исходника страницы? OnBitmapRequest и OnImageRequest срабатывают только при загрузке исходного текста, и если картинки нет то вместо нее рисуется картинка по-умолчанию. Перегрузка страницы сбивает позиции скрола, выделения, и заново грузит все ресурсы, потому такой подход неприемлем. Нужно как в обычном браузере.


 
antonn ©   (2011-02-03 03:18) [1]

THTMLViewer.InsertImage() визуально ничего не меняет


 
KilkennyCat ©   (2011-02-03 03:20) [2]

он же вроде бы с исходниками?


 
Германн ©   (2011-02-03 03:30) [3]


> antonn ©   (03.02.11 03:14)

<offtop>
И тебе ни капельки не стыдно, что ты спрашиваешь именно тут? А не на "исходниках", "винграде" и т.д.?
</offtop>


 
sniknik ©   (2011-02-03 07:51) [4]

> Нужно как в обычном браузере.
а THTMLViewer/ThtmlLite поддерживает скрипты? как в обычном... т.е. в частности ajax будет работать? тогда всю страницу можно и не перезагружать.


 
antonn ©   (2011-02-03 12:21) [5]


> он же вроде бы с исходниками?
>

да, а ты их видел? =)


> И тебе ни капельки не стыдно, что ты спрашиваешь именно
> тут? А не на "исходниках", "винграде" и т.д.?

нисколько. на исходниках и винграде отличный поиск, а здесь помню кто-то рекомендовал эти компоненты как замену Twebrowser.


> а THTMLViewer/ThtmlLite поддерживает скрипты? как в обычном.
> .. т.е. в частности ajax будет работать? тогда всю страницу
> можно и не перезагружать.
>

это костыльно выглядит. К тому же там нет загрузки данных по сети как таковой, это делается своими силами, компонент только рисует то что ему дали (т.е. я скачиваю сам и ему скармливаю). И пока проблема в том, что он рисует только то что ему сразу дали.


 
Медвежонок ХМЛ ©   (2011-02-03 12:33) [6]

кто-то рекомендовал эти компоненты как замену Twebrowser.

ну что же. п
орекомендовали, а ты и взял.
а он
рисует только то что ему сразу дали.

был наверное огромный смысл в альтернативе?


 
antonn ©   (2011-02-03 12:35) [7]

да


 
antonn ©   (2011-02-03 13:22) [8]

проблема решена, мать их за ногу :)
чтобы воспользоваться методом InsertImage() нужно обязательно установить обработчик StreamRequest(), в котором для параметра var Stream: TMemoryStream; возвращать не стрим картинки, и не nil, а заранее созданый и обозначенный глобально стрим из юнита liteun2.

uses liteun2;
procedure TForm1.HTMLViewerhtStreamRequest(Sender: TObject; const SRC: String; var Stream: TMemoryStream);
begin
     Stream:=WaitStream;
end;



Страницы: 1 вся ветка

Текущий архив: 2011.05.08;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.008 c
2-1296648381
NieL
2011-02-02 15:06
2011.05.08
Сформировать список


15-1296083374
Германн
2011-01-27 02:09
2011.05.08
TListView с группами


2-1296050681
ZV
2011-01-26 17:04
2011.05.08
Преобразование Byte в Word?


15-1295731785
Юрий
2011-01-23 00:29
2011.05.08
С днем рождения ! 23 января 2011 воскресенье


2-1295941539
Godod
2011-01-25 10:45
2011.05.08
Delphi и FilterGraph