![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Програмная генерация события в TwebBrowser
Evgenius © (2005-04-02 08:56:00)Мне нужно програмно осуществить нажатие на элементе в HTML документе отображенном в TWebBrowser либо нажать Enter в поле ввода.
Вот текст HTML-кода для Edit`а:
Вот текст для картинки:
А этот кусок тоже может быть интересен:
Собственно, кусок программы где я организовал ввод некоторого текста в Edit.
procedure TForm1.Button1Click(Sender: TObject);
var
HTML_Doc: IHTMLDocument2;
Window: IHTMLWindow2;
oRange1: variant;
name_frame: OleVariant;
ovElements: OleVariant;
i: Integer;
begin
HTML_Doc := WebBrowser1.Document as IHTMLDocument2;
Window := HTML_Doc.parentWindow as IHTMLWindow2;
name_frame := 'ch_buttons';
oRange1 := Window.frames.item(name_frame).document;
ovElements := oRange1.forms.item(0).elements;
for i := 0 to (ovElements.Length - 1) do
if (ovElements.item(i).tagName = 'INPUT') and
(ovElements.item(i).type = 'text') and
(ovElements.item(i).name = 'text') then begin
ovElements.item(i).Value:=ovElements.item(i).Value+'Текст, который я програмно ввожу в поле ввода.';
// ovElements.item(i).keyup:='#13'; Именно тут я делаю неправильно(ужас да и только). Как мне програмно нажать Enter в этом месте???
end;
end;
Все происходит во фрейме, поэтому код малость осложнен.
Alpine (2005-05-06 13:57:00) [1]Window.execScript - ? Дельфи не знает такой команды !
Gage (2005-04-23 19:41:00) [2]Ну, это конечно не нажатие, но форма отправится.
HTML
==========
<form name=frm action=" http://127.0.0.1/myCGI">
<input type=text name=txt>
<input type=submit name=x>
</form>
Отправка формы
==============
Window.execScript('document.all.frm.submit();', 'javascript');
Evgenius (2005-04-02 23:20:00) [3]Чем точнее задаешь вопрос - тем больше его боятся... :(
Зато неправильно заданные вопросы все упрекают, мол тупишь братец(сам не знаешь чего хочешь), сначала вопросы научись задавать. А я конкретно озадачен: как сгенерировать событие нажатия Enter`а в поле ввода или Click по картинке.
Эта же проблема уже решена мной на 99%...
P.S. Не разводите конференций не в тему. Если есть ответ, то пишите.
Evgenius (2005-04-02 09:00:00) [4]Извиняюсь за двойное сообщение. Инет глюканул... Просьба к модераторам удалить одно из сообщений(в котором не будет ответов естественно).