![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Изменения в TWebBrowser
Ш-К © (2007-05-16 05:53:00)У меня есть HTML документ. При отображении в TWebBrowser мне надо динамически поменять какой-то элемент. Вся проблема в том, что мне нельзя показывать предыдущее состояние элемента. А элемент я должен менять только средствами DHTML загруженного документа.
Т.е. другими словами. Мне надо загрузить документ, модифицировать его, и только потом паказать пользователю.
PS. Да, загружаю документ через body.innerhtml := ...
Ш-К (2007-05-20 14:46:00) [1]Положил панель на TWebBrowser, рисую на ней через (Document as IViewObject), загружаю документ, убираю панель.
G_M_S (2007-05-18 12:47:00) [2]
> Так вот, мне не надо чтоб все прыгало, а был виден только
> результат.
От этого ты никак не избавишься. Разве что закроешь TWebBrowser на момент загрузки чем-нить (например, грузить паги по очереди в 2 TWebBrowser'a и делать им все время SendToBack и BringToFront). Тобишь послеокончания загрузки/обработки показывать тот, в который пага грузилась, а до этого будет висеть старая.
Но если обрабатывать клики и пр. события юзера - ничем и никак ты не закроешь бравзер на время работы скриптов.
Ш-К (2007-05-18 10:28:00) [3]Я создаю слои (<div>). Размеры и позиция этих слоев зависит от содержания слоя, от координат других элементов, от размеров самого браузера и от стилей-классов (которые вставляются еще в стринге). А потом, когда я получил координаты слоя, я корректирую другие элементы.
Так вот, мне не надо чтоб все прыгало, а был виден только результат.
G_M_S (2007-05-18 10:01:00) [4]
> Речь идет именно о правке средствами DHTML
Насколько я знаю - DHTML это что-то типа "Document.Forms[2].Elements[0].Value = la-la-la". DHTML - скрипты, меняющие документ при действиях пользователя. Что ты там собрался менять ОТДЕЛЬНО (без юзера) и не проще ли это поменять таки текстом (т.к. правка текста - более мощное и гибкое средство, чем DHTML)? Ну или ситуацию подробнее - я вообще вэб-кодингом подрабатываю, может, подскажу чего попроще.
Ш-К (2007-05-18 09:28:00) [5]Все, что можно править в стринге, и так правится. Речь идет именно о правке средствами DHTML.
Я попробывал загружать документ в отдельный невидимый TWebBrowser и там править. Но из невидимого TWebBrowser прочитать текст правленного документа невозможно.
G_M_S (2007-05-16 18:09:00) [6]Документ бери при помощи IdHTTP, сохраняй на винт и оттуда открывай методом Navigate. В промежутке меняй в локальном файле, чего надо...