Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 31.07.2012, 01:26   #1
glebast
Форумчанин
 
Аватар для glebast
 
Регистрация: 10.12.2011
Сообщений: 154
Восклицание Ошибка в webbrowser

Всем привет.
Я хочу заполнить форму в webbrowser, таким вот способом:
Код:
procedure TForm1.StartClick(Sender: TObject);
var
t:variant;
begin
    t:=wb1.oleobject.document.getelementname('Login');
    t.value:='989573188240';
end;
Но у меня выдает ошибку:
method name not supported by automation object

Облазил весь инет, так ничего стоящего не нашел.
Если кто может, помогите плииз, очень буду благодарен.
glebast вне форума Ответить с цитированием
Старый 31.07.2012, 01:30   #2
glebast
Форумчанин
 
Аватар для glebast
 
Регистрация: 10.12.2011
Сообщений: 154
По умолчанию

Или если кто-то еще знает способы заполнения форм в webbrowser, напишите пожалуйста, а то мне очень надо.
Заранее спасибо.
glebast вне форума Ответить с цитированием
Старый 31.07.2012, 08:15   #3
Zer0
Форумчанин
 
Аватар для Zer0
 
Регистрация: 13.12.2007
Сообщений: 788
По умолчанию

во-первых, если не изменяет память, метод называется GetElementsByName, и он получает список, а не один конкретный узел
Во-вторых, значительно проще использовать модуль MSHTML, в котором присутствуют интерфейсы IHTMLDocument, IHTMLInputElement, IHTMLSelectElement итд, в которых уже прописаны возможные методы для работы

Например код мог бы выглядеть так:
Код:
var
  inputEl:IHtmlInputElement;
  doc:IHtmlDocument3;
begin
  doc:=(wb1.document as IhtmlDocument3);
  inputEl:=(doc.getElementsByName('Login').item(0,0) as IHTMLInputElement);
  inputEl.Value:='123456';
end;
Но честно - могу немного ошибиться, давно уже использую EWB от bsalsa вместо обычного TWebBrowser
благодарность - сюда (не забываем писать от кого)

Последний раз редактировалось Zer0; 31.07.2012 в 12:53.
Zer0 вне форума Ответить с цитированием
Старый 31.07.2012, 12:15   #4
glebast
Форумчанин
 
Аватар для glebast
 
Регистрация: 10.12.2011
Сообщений: 154
По умолчанию

У меня ругается на этом месте:
Код:
doc:=(wb1.oleobject.document as IhtmlDocument3);
[Error] Unit1.pas(60): Operator not applicable to this operand type
glebast вне форума Ответить с цитированием
Старый 31.07.2012, 12:54   #5
Zer0
Форумчанин
 
Аватар для Zer0
 
Регистрация: 13.12.2007
Сообщений: 788
По умолчанию

Попробуйте без oleobject, в коде поправил
благодарность - сюда (не забываем писать от кого)
Zer0 вне форума Ответить с цитированием
Старый 31.07.2012, 13:09   #6
glebast
Форумчанин
 
Аватар для glebast
 
Регистрация: 10.12.2011
Сообщений: 154
Радость

Цитата:
Сообщение от Zer0 Посмотреть сообщение
Попробуйте без oleobject, в коде поправил
Да помогло, большое спасибо!
glebast вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ошибка webbrowser Terti Работа с сетью в Delphi 3 28.10.2011 18:09
ошибка в WebBrowser - оказалось проблема в internet explorer 9 designer999 Работа с сетью в Delphi 13 06.01.2011 07:04
ошибка webbrowser nenoob1 Работа с сетью в Delphi 5 17.08.2010 09:53
Ошибка выполнения сценария WebBrowser [Internet] Рустам Работа с сетью в Delphi 2 12.03.2009 22:19
WebBrowser и ошибка 404, идея ее обработки celovec Работа с сетью в Delphi 3 22.02.2009 19:40