Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.02.04;
Скачать: CL | DM;

Вниз

Заполнить поле в WebBrowser1   Найти похожие ветки 

 
ssss   (2007-01-19 21:16) [0]

Добрый всем день!
Поджскаите мне пожалуйста как можно программно автоматический заполнить поле в WebBrowser1??например у меня есть чистая страница и там одно поле как мне программно туда вбить текст, заведомо мне нужный который на форме  будет нвходиться допустим в Edit???
Искал в ниете примеры и находил только те которые исполюзуют модуль MSHTML_TLB а без него никак?


 
Dmitrij_K   (2007-01-19 21:32) [1]

MSHTML_TLB == MSHTML


 
FindWindow   (2007-01-19 21:43) [2]

2Dmitrij_K спс большое использовал этот модуль вот с этим кодом и при нажатие кнопки поля че то не заполнялись на странице "http://www.swissdelphicenter.ch/en/tipsuchen.php" н подскажите в чем проблема?

procedure TForm1.Button3Click(Sender: TObject);
var
hIE: HWND;
ShellWindow: IShellWindows;
WB: IWebbrowser2;
spDisp: IDispatch;
IDoc1: IHTMLDocument2;
Document: Variant;
k, m: Integer;
ovElements: OleVariant;
i: Integer;
begin
ShellWindow := CoShellWindows.Create;
// get the running instance of Internet Explorer
for k := 0 to ShellWindow.Count do
begin
spDisp := ShellWindow.Item(k);
if spDisp = nil then Continue;
// QueryInterface determines if an interface can be used with an object
spDisp.QueryInterface(iWebBrowser2, WB);

if WB <> nil then
begin
WB.Document.QueryInterface(IHTMLDocument2, iDoc1);
if iDoc1 <> nil then
begin
WB := ShellWindow.Item(k) as IWebbrowser2;
begin
Document := WB.Document;

// count forms on document and iterate through its forms
for m := 0 to Document.forms.Length - 1 do
begin
ovElements := Document.forms.Item(m).elements;
// iterate through elements
for i := 0 to ovElements.Length - 1 do
begin
// when input fieldname is found, try to fill out
try
if (CompareText(ovElements.item(i).tagName, "INPUT") = 0) and
(CompareText(ovElements.item(i).type, "text") = 0) then
begin
ovElements.item(i).Value := "FindWindow";
end;
except
end;
// when Submit button is found, try to click
try
if (CompareText(ovElements.item(i).tagName, "INPUT") = 0) and
(CompareText(ovElements.item(i).type, "SUBMIT") = 0) and
(ovElements.item(i).Value = "Search") then // Suchen fьr German
begin
ovElements.item(i).Click;
end;
except
end;
end;
end;
end;
end;
end;
end;
end;



 
palva ©   (2007-01-19 22:21) [3]

Странно, а у меня заполняется. Может быть вы открыли страницу на форме Delphi, а не в эксплорере? Там не заполняется.


 
ssss   (2007-01-20 11:44) [4]

а вот как именно на форме в WebBrowser1 заполнить а не в ИЕ....


 
easy ©   (2007-01-20 13:38) [5]

http://dfc.com.ru/?sid=2&id=9&itemid=26


 
ssss   (2007-01-20 19:12) [6]

Это создает страницу а надо что б уже на готовой странице....


 
easy ©   (2007-01-20 20:11) [7]


> Это создает страницу

Это создаёт вполне готовую страницу


 
ssss   (2007-01-21 11:22) [8]


> Это создаёт вполне готовую страницу

Вот именно что создает а мне надо на готовой  странице допустим даже на этой http://delphimaster.net/view/2-1169230580/  в прошлом примере показанно как на это странице заполняються поля в ИЕ а мне нужно что б в WebBrowser1....


 
palva ©   (2007-01-21 14:44) [9]

Все равно непонятно. Так что ли?

procedure TForm1.FormCreate(Sender: TObject);
begin
 WebBrowser1.Navigate(
   "http://delphimaster.net/view/2-1169230580/");
end;

procedure TForm1.WebBrowser1DocumentComplete(ASender: TObject;
 const pDisp: IDispatch; var URL: OleVariant);
var
 input_text,textareas:OleVariant;
 i:integer;
begin
 input_text:=WebBrowser1.OleObject.document.all.tags("INPUT");
 textareas:= WebBrowser1.OleObject.document.all.tags("TEXTAREA");
 for i:=0 to input_text.length-1 do
   if input_text.item(i).type="text" then
     input_text.item(i).value:=input_text.item(i).name;
 for i:=0 to textareas.length-1 do
   textareas.item(i).value:=textareas.item(i).name;
end;



Страницы: 1 вся ветка

Текущий архив: 2007.02.04;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.049 c
3-1163258294
Gulnaz
2006-11-11 18:18
2007.02.04
Как создать поиск


2-1169045733
AlexanderMS
2007-01-17 17:55
2007.02.04
Как узнать, что созданный объект "свободен"?


4-1157143168
NeiRo_St
2006-09-02 00:39
2007.02.04
Web-camera


3-1163427521
darlock
2006-11-13 17:18
2007.02.04
Кросс отчеты с строками на пересечении в Report Builder 9


2-1169022767
sergeyst
2007-01-17 11:32
2007.02.04
StringGrid