Главная страница
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.025 c
2-1200134350
AntonUSAnoV
2008-01-12 13:39
2008.02.03
как узнать существует ли файл?


15-1198672117
Юрий Зотов
2007-12-26 15:28
2008.02.03
Хотя сегодня и не пятница, но... (задачка от Васи Пупкина)


2-1199382645
buka
2008-01-03 20:50
2008.02.03
Почему не работает в ADOTable?


2-1198248676
botaniQ
2007-12-21 17:51
2008.02.03
Ошибка "has encountered a problem and needs to close..."


2-1199963797
Smaller
2008-01-10 14:16
2008.02.03
Где отключается backup?