把WebBrowser中的資料存到Memo |
答題得分者是:Fishman
|
baygon
一般會員 發表:20 回覆:31 積分:10 註冊:2003-10-03 發送簡訊給我 |
|
qoo1234
版主 發表:256 回覆:1167 積分:659 註冊:2003-02-24 發送簡訊給我 |
|
baygon
一般會員 發表:20 回覆:31 積分:10 註冊:2003-10-03 發送簡訊給我 |
|
Fishman
尊榮會員 發表:120 回覆:1949 積分:2163 註冊:2006-10-28 發送簡訊給我 |
Hi baygon, 先將 HTML 中的〈br〉轉換為 #13 存成 HTML,再用 WebBrowser 開啟該 HTML,讀取期 InnerText
procedure TForm1.Button41Click(Sender: TObject); begin OKString := ''; WebBrowser1.Navigate('http://localhost'); while OKString = '' do // 還未執行完成時 begin Sleep(100); Application.ProcessMessages; end; Memo5.Lines.Text := StringReplace((WebBrowser1.Document AS IHTMLDocument2).body,'〈br〉',#13,[rfReplaceAll, rfIgnoreCase]); Memo5.Lines.SaveToFile('c:\temp\inner.html'); OKString := ''; WebBrowser1.Navigate('c:\temp\inner.html'); while OKString = '' do // 還未執行完成時 begin Sleep(100); Application.ProcessMessages; end; Memo5.Lines.Text := (WebBrowser1.Document as IHTMLDocument2).body.innerText; Memo5.Lines.SaveToFile('c:\temp\inner.txt'); end;紅色字體部分,記得須更改 發表人 -
------
Fishman |
baygon
一般會員 發表:20 回覆:31 積分:10 註冊:2003-10-03 發送簡訊給我 |
首先非常感謝Fishman 熱情解答
我剛也try過了是沒有問題的
在苦無對策時、我參考了站長之前發表的一篇文章解決了
====================================================
解決的方式如下:
< class="code">
var i,len:Integer;
hd:IHTMLDocument2;
all:IHTMLElementCollection;
item:OleVariant;
itemname:string;
begin
ok:=False;
application.ProcessMessages;
webBrowser1.Navigate('http://localhost');
while not ok do
application.ProcessMessages; hd:=WebBrowser1.Document as IHTMLDocument2;
all:=hd.Get_links;
len:=all.length;
for i:=0 to len-1 do
begin
item:=all.item(i,varempty);
itemname:=item.innerText;
Memo1.Lines.Add(itemname);
end;
end; procedure TYBacked_ViewAttachForm.WebBrowser1DocumentComplete(
Sender: TObject; const pDisp: IDispatch; var URL: OleVariant);
begin
ok:=True;
end;
發表人 - baygon 於 2004/03/02 17:29:57 發表人 - baygon 於 2004/03/02 17:33:13
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |