Как да щракнете програмно върху връзка в Internet Explorer

Има заредена уеб страница в Internet Explorer, трябва програмно да щракнете върху предварително известна връзка. Как да го приложим?

ViktorZ ( 06.11.2005 19:04 ) [1]

И защо, ако не е тайна, искате да направите измамник?

Volf_555 ( 2005-11-06 19:15 ) [2]

Volf_555 ( 2005-11-06 21:14 ) [3]

И така, може ли някой да ми помогне да реша този проблем?

SergP. (2005-11-06 23:33) [4]

Ако в TWebbrowser, тогава мога да ви кажа.

Volf_555 ( 2005-11-07 02:26 ) [5]

Да кажем в TWebBrowser - как да внедрим тогава?

Volf_555 ( 2005-11-07 02:47 ) [6]

WrbBrowser1.Navigate(". ") не предлагайте :-)

Кликнете върху i-та връзка:

SergP. (2005-11-07 08:41) [8]

Ако с рамки, щракнете върху j-тата връзка в i-тия кадър:

Volf_555 ( 2005-11-08 11:05 ) [9]

i - какъв тип? Цяло число или низ?

Опитах с цяло число

Volf_555 ( 2005-11-10 02:23 ) [11]

написа следното: WebBrowser1.OleObject.document.frames.item(0).document.all.tags("a").item(1).click Error: "Project1.exe повдигна клас изключение EOleException със съобщение "Членът на групата не е намерен". Процесът е спрян. Използвайте Step или Run, за да продължите."

Volf_555 ( 2005-11-10 02:45 ) [12]

SergP, дай работещ пример

> Volf_555 (11/10/05 02:23 AM) [11] > написа следното: > WebBrowser1.OleObject.document.frames.item(0).document.all. > tags("a").item(1).click Error: > „Project1.exe повдигна клас изключение EOleException с > съобщение "Членът на групата не е намерен". Процесът е спрян. Използвайте стъпка > или Изпълни, за да продължиш."

това е вярно. Ако вашият документ няма рамки, или няма връзки (или няма необходима връзка), или документът изобщо не е зареден, тогава ще се покаже, че „Членът на групата не е намерен“

Но как да щракнете или по-скоро да попълните полето за въвеждане, ако страницата се състои от няколко рамки, вложени една в друга?

Например главната страница има две рамки, една за заглавката и една за тялото на документа. Но долната рамка съдържа страницата, която сама по себе си е съставена от рамки.

Как да стигна до конкретен кадър?? Опитах се да разбера по практичен начин, но уви, не се получи :(

procedure TForm1.Button8Click(Sender: TObject); var frame1,frame2:variant;i:integer; begin for i:=0 to 10 do begin try frame1:=WebBrowser1.OleObject.document.frames.item(1); frame2:=frame1.document.all.tags("frame").item(i); frame2.document.all.tags("input").item(1).value:="HHHHHHHHHELLOOOOO"; освен memo3.Lines.Add("номерът на рамката "+inttostr(i)+" не пасва"); край; край; край;

> Но как да щракнете или по-скоро да попълните полето за въвеждане, ако страницата > се състои от множество вложени рамки?

не знам Няма време за експерименти. Но опитайте това:

procedure TForm1.Button8Click(Sender: TObject); var frame1,frame2:variant;i:integer; begin for i:=0 to 10 do begin try frame1:=WebBrowser1.OleObject.document.frames.item(1); frame2:=frame1.document.frames.item(i);frame2.document.all.tags("input").item(1).value:="HHHHHHHHHHELLOOOOO"; освен memo3.Lines.Add("номерът на рамката "+inttostr(i)+" не пасва"); край; край; край;

Може да работи.Но не мога да гарантирам

Не, не става :(

Може би някой знае решението?