Форум: "Сети";
Текущий архив: 2003.06.09;
Скачать: [xml.tar.bz2];
ВнизTWebBrowser Найти похожие ветки
← →
Micke (2003-03-30 22:01) [0]Народ! Вопрос: как мне изменить value input"а в TWebBrowser? И как сделать чтобы там формы Enter"ом отправлялись?
← →
gek (2003-03-31 02:58) [1]См в FAQ, этот вопрос часто задается
← →
Micke (2003-03-31 19:48) [2]Простите... но я что-то не могу найти... есть похожее, но совсем не то! Ну подскажите млин! Я так долго уже парюсь! Из-за этого не продвигается написание программы... всё.. безнадёга...
← →
sergey2 (2003-04-02 12:23) [3]пиши на мыло. У меня все мои исходники дома, а я сейчас на работе, и точно не помню как правильно....
← →
Ш-К (2003-04-02 23:09) [4]
> как сделать чтобы там формы Enter"ом
IE проапгрейдить.
← →
Micke (2003-04-05 20:48) [5]Ребята спасайте!!! Что делать! Нигде нет ответа на это! Вы последняя надежда!
← →
sergey2 (2003-04-06 06:42) [6]Я так понимаю что тебе вот это нужно:
Webbrowser1.oleobject.document.All.tags("input").item(n,varEmpty).value:="Вася Пупкин";
n - номер input"а. Начинается с 0.
← →
Ihor Osov'yak (2003-04-06 17:04) [7]2 Micke © (05.04.03 20:48)
http://delphi.vitpc.com/mastering/tweb.htm
2 sergey2 (06.04.03 06:42)
Не надо так делать. На бейсике пускай так делают.
Дело в том, что соотв. элемент может отсутствовать (хотя бы по причине ошибки загрузки страницы) - ексепшенов получишь кучу..
← →
sergey2 (2003-04-06 20:41) [8]2 Ihor Osov"yak Просто так проще. Да и инфу об этом в инете трудно найти. Что-то одно нашел и теперь все что имеет отношение к TWebbrowser"у пишу подобным образом. Согласен что может это и не совсем правильно.
да и я обычно делаю так: (вернее принцип такой)
error:=false;
try
Webbrowser1.oleobject.document.All.tags("input").item(n,varEmpty).value:="Вася Пупкин";
except
error:=true;
end;
А потом анализирую переменную error
кстати плиз если считаешь что это тоже по-Бейсиковски, то обьясни почему.
← →
Ihor Osov'yak (2003-04-06 21:44) [9]Почему по-бейсиковски? Связывание во время рантайма по именам. То есть часть ошибок, которые мог-бы поймать компилятор, пропускаем на рантайм. Плюс постоянное нарывание на ексепшены в случае обращения к обьектам, которых не существует (которые конечно можно перехватить, как Вы это и делаете, но все же..).
Конечно, есть случаи, когда более оптимально работать по познему связыванию, а иногда другого и не дано.. Но это не тот случай.
По поводу инфо - посмотрите ссылочку, которую я привел.. Писалось это два года назад.. Сейчас бы несколько по другому расставил бы акценты.. Но там я делал упор все же на "не бейсиковский" стиль.
Вообще- то я собирался писать продолжение, материала слава богу более чем достаточно. Думаю что все - же продолжу, даже в обозримом будущем.
Если же с инглиш не проблема - то msdn, "Reusing Browser Technology" - информации очень много, в деталях...
← →
Micke (2003-04-06 22:56) [10]Пасиб народ! Сегодня испытаю...
← →
nikkie (2003-04-07 18:35) [11]>Ihor Osov"yak
Мощь дельфи - в том, что можно делать и по-бейсиковски и по-сишному. Если кого прикалывает писать кучу кода с использованием VarArrayCreate - пусть пишет, хотя я не вижу преимущества раннего связывания перед поздним в данном случае. Если ты хочешь более аккуратного кода, напиши
var
Doc, Tag: Variant;
begin
Doc := WebBrowser.Document;
if not VarIsClear(Doc) then begin
Tag := Doc.All.Tags("input");
if not VarIsClear(Tag) then begin
// и т.д.
end;
end;
end;
← →
Ihor Osov'yak (2003-04-07 22:13) [12]2 nikkie © (07.04.03 18:35)
Да нет, Вы не совсем правы. Я тут почти полчаса пытался развить этот тезис, но во время постинга случился сбой и текст унесло.. Перебивать влом. Если коротко - VarArrayCreate здесь ни причем.
Кода будет больше незначительно, но зато он будет намного надежнее и легче в отладке. Вывод проверялся практически, в том числе и путем переписывания проектов от других кодеров, которые увлекались "бейсиковским" стилем...
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2003.06.09;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.009 c