Форум: "Начинающим";
Текущий архив: 2011.05.08;
Скачать: [xml.tar.bz2];
Внизотложенная загрузка картинки в 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;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.005 c