如何用程式點 WebBrowser 內超連結 |
尚未結案
|
RICH
一般會員 發表:3 回覆:3 積分:1 註冊:2003-06-11 發送簡訊給我 |
|
change.jian
版主 發表:29 回覆:620 積分:439 註冊:2003-06-02 發送簡訊給我 |
|
jeff377
初階會員 發表:9 回覆:60 積分:33 註冊:2004-08-10 發送簡訊給我 |
你可以使用TWebbrowser物件來操作,下面的FindLinkByInnerText函數是找到指定InnerText的連結,你可以找到指定的連結後,執行click即可,如: oLink:= FindLinkByInnerText(TWebbrowser,'連結名稱');
if oLink<>nil then oLink.click; ======================================================
function FindLinkByInnerText(WB: TWebbrowser; sInnerText: WideString): HTMLAnchorElement;
//找到指定InnerText的連結
var
oDoc: HTMLDocument;
oLinks: IHTMLElementCollection;
oLink: HTMLAnchorElement;
N1: Integer;
begin
Result:= nil;
oDoc:= WB.Document as HTMLDocument;
oLinks:= oDoc.links as IHTMLElementCollection;
for N1:= 0 to oLinks.length-1 do
begin
oLink:= oLinks.item(N1,0) as HTMLAnchorElement;
if SameText(oLink.innerText,sInnerText) then
begin
Result:= oLink;
exit;
end;
end;
end;
|
jeff377
初階會員 發表:9 回覆:60 積分:33 註冊:2004-08-10 發送簡訊給我 |
引言: 一般應該是網頁程式裡都有session之類的變數記錄,看你是否從首頁進去,如果沒有,就會導回首頁.所以,如果你直接輸入網址進入到某一頁的話,應該是不行的.解決的方法是.....,我也還在找取得網頁的所有變數的方法(如果有的話)取得網頁所有變數是可行的,只是要了解TWebbrowse的結構,像我最近在寫網頁控制方面的程式,都是利用VB去監看TWebbrowse的結構,VB在偵錯模式可以清楚的列出整個TWebbrowse的結構,可以往這方面去查。 如果在Delphi實作出解析網頁結構的物件,就可以更方便操控它了。基本上這不難,只是需要時間。 |
Ktop_Robot
站務副站長 發表:0 回覆:3511 積分:0 註冊:2007-04-17 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |