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

Вниз

Изменения в TWebBrowser   Найти похожие ветки 

 
Ш-К   (2007-05-16 05:53) [0]

У меня есть HTML документ. При отображении в TWebBrowser мне надо динамически поменять какой-то элемент. Вся проблема в том, что мне нельзя показывать предыдущее состояние элемента. А элемент я должен менять только средствами DHTML загруженного документа.

Т.е. другими словами. Мне надо загрузить документ, модифицировать его, и только потом паказать пользователю.

PS. Да, загружаю документ через body.innerhtml := ...


 
G_M_S ©   (2007-05-16 18:09) [1]

Документ бери при помощи IdHTTP, сохраняй на винт и оттуда открывай методом Navigate. В промежутке меняй в локальном файле, чего надо...


 
Ш-К   (2007-05-18 09:28) [2]

Все, что можно править в стринге, и так правится. Речь идет именно о правке средствами DHTML.

Я попробывал загружать документ в отдельный невидимый TWebBrowser и там править. Но из невидимого TWebBrowser прочитать текст правленного документа невозможно.


 
G_M_S ©   (2007-05-18 10:01) [3]


>  Речь идет именно о правке средствами DHTML

Насколько я знаю - DHTML это что-то типа "Document.Forms[2].Elements[0].Value = la-la-la". DHTML - скрипты, меняющие документ при действиях пользователя. Что ты там собрался менять ОТДЕЛЬНО (без юзера) и не проще ли это поменять таки текстом (т.к. правка текста - более мощное и гибкое средство, чем DHTML)? Ну или ситуацию подробнее - я вообще вэб-кодингом подрабатываю, может, подскажу чего попроще.


 
Ш-К   (2007-05-18 10:28) [4]

Я создаю слои (<div>). Размеры и позиция этих слоев зависит от содержания слоя, от координат других элементов, от размеров самого браузера и от стилей-классов (которые вставляются еще в стринге). А потом, когда я получил координаты слоя, я корректирую другие элементы.
Так вот, мне не надо чтоб все прыгало, а был виден только результат.


 
G_M_S ©   (2007-05-18 12:47) [5]


> Так вот, мне не надо чтоб все прыгало, а был виден только
> результат.

От этого ты никак не избавишься. Разве что закроешь TWebBrowser на момент загрузки чем-нить (например, грузить паги по очереди в 2 TWebBrowser"a и делать им все время SendToBack и BringToFront). Тобишь послеокончания загрузки/обработки показывать тот, в который пага грузилась, а до этого будет висеть старая.

Но если обрабатывать клики и пр. события юзера - ничем и никак ты не закроешь бравзер на время работы скриптов.


 
Ш-К   (2007-05-20 14:46) [6]

Положил панель на TWebBrowser, рисую на ней через (Document as IViewObject), загружаю документ, убираю панель.



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

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

Наверх




Память: 0.48 MB
Время: 0.036 c
15-1199064852
SerJaNT
2007-12-31 04:34
2008.02.03
mod_rewrite &amp; PHP


15-1198530408
Владимир
2007-12-25 00:06
2008.02.03
Не загружается Windows XP


2-1199547471
VAD*Anti Gopn!k
2008-01-05 18:37
2008.02.03
IP-адреса локальной сети.


2-1199621921
DEEEEMO
2008-01-06 15:18
2008.02.03
Запороливание


15-1198438206
Andy BitOff
2007-12-23 22:30
2008.02.03
поделитесь ссылкой на старые