![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
Здравствуйте.
Буквально вчера начал знакомство с делфи.Создал форму,добавил кнопку button1.Никак не удаётся реализовать клик в мазиле. Нужно ли браузер на форму добавить?Подскажите полный код. Код:
for I := 0 to WebBrowser1.OleObject.Document.all.tags('input').length - 1 do
begin
try
if (WebBrowser1.OleObject.Document.all.tags('input').item(i).value='Войти') then
WebBrowser1.OleObject.Document.all.tags('input').item(i).click;
except
end;
//-----------------------------------
var
a:variant;
begin
a:=webbrowser1.oleobject.document.getelementbyid('gb_70');
a.click;
end;
//----------------------------------
можно по классу gb_Vf gb_Ha gb_Eb
//----------------------------------Код вставляю в кнопку,выдаёт ошибку. Последний раз редактировалось Admin, 25.11.2017 в 20:20. |
|
#2
|
||||
|
||||
|
Цитата:
Код:
uses ShellAPI;
procedure TForm1.Button1Click(Sender: TObject);
const
URL: string = 'https://accounts.google.com/ServiceLogin?' +
'hl=ru&passive=true&continue=http://www.google.ru/';
begin
ShellExecute(0, 'open', pChar(URL), nil, nil, SW_SHOWNORMAL);
end; |
|
#3
|
|||
|
|||
|
Про ссылку на кнопке знаю.Нужно методом id или class.
|
|
#4
|
|||
|
|||
|
Вот нашёл решение:
Создаём форму,добавляем 2 кнопки Button и WebBrauser(из вкладки интернет) Код:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, OleCtrls, SHDocVw, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
WebBrowser1: TWebBrowser;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
WebBrowser1.Navigate('www.yandex.ru'); //открываем яндекс
end;
procedure TForm1.Button2Click(Sender: TObject);
var
i:integer;
s: String;
html_tag: Variant;
begin
html_tag:= WebBrowser1.OleObject.Document.forms.item(0).elements;
for i:=0 to (html_tag.Length-1) do
begin
if html_tag.item(i).name = 'login' then //ищем элемент с именем "login"
html_tag.item(i).value:= 'delphi'; //и присваиваем ему значение
if html_tag.item(i).name = 'passwd' then //ищем элемент с именем "passwd"
html_tag.item(i).value:= 'delphi'; //и присваиваем ему значение
if html_tag.item(i).value = 'Войти' then //ищем элемент со значением "Войти"
html_tag.item(i).click; // и нажимаем на него
end;
end;
end.Последний раз редактировалось sergeinovilozf, 26.11.2017 в 19:00. |
| Этот пользователь сказал Спасибо sergeinovilozf за это полезное сообщение: | ||
Admin (26.11.2017)
| ||
|
#5
|
|||
|
|||
|
Всем спасибо за ответы.
|
|
#6
|
||||
|
||||
|
Блок с поиском через айди работает, идентификатор кнопаря просто неверный, можно ведь было в html-исходнике товарища гугеля его и подсмотреть предварительно
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
a: variant;
begin
a:= WebBrowser1.OleObject.Document.GetElementByID('gbi4s1');
a.Click;
end; |