線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:4271
推到 Plurk!
推到 Facebook!

Webbrowser需按右鍵顯示圖片的問題

答題得分者是:leveon
huwk
資深會員


發表:26
回覆:340
積分:323
註冊:2002-04-03

發送簡訊給我
#1 引用回覆 回覆 發表時間:2012-11-05 11:04:07 IP:203.73.xxx.xxx 訂閱
 平台 : W7,XP
IE:版次 7,8
程式做法: 使用WEBBROWSER載入一個本地的HTML檔案.裡頭有夾圖檔(會用JAVASCRIPT改變FOCUS ON的圖片大小而已),所有的檔案均是已經存在實體路徑
問題: "有時"常會掉圖, 但掉圖時.重新整理或是在掉圖的框上按右鍵選"顯示圖示", 又可以正常顯示, 若按過"顯示圖片"後..今日再開啟這個頁面,圖是會在不會有掉的情況
己檢查:
1.IE的設定,確定預設會顯示圖示
2.使用IE直接開啟此頁面, 並未發現掉圖
相關圖片
1.掉圖時按右鍵.
2.內容的情況
3.按過顯示圖片後的資訊
------
熊的學習 http://huwk.blogspot.com
編輯記錄
huwk 重新編輯於 2012-11-04 20:24:01, 註解 無‧
huwk 重新編輯於 2012-11-04 20:28:26, 註解 無‧
leveon
資深會員


發表:30
回覆:386
積分:303
註冊:2012-02-12

發送簡訊給我
#2 引用回覆 回覆 發表時間:2012-11-06 18:19:55 IP:118.165.xxx.xxx 訂閱
 換個瀏覽器 會不會比較好呢


http://www.youtube.com/watch?v=elPXUTXBLEc


huwk
資深會員


發表:26
回覆:340
積分:323
註冊:2002-04-03

發送簡訊給我
#3 引用回覆 回覆 發表時間:2012-11-13 13:45:21 IP:118.163.xxx.xxx 訂閱
之前有考慮過..不過以目前作業系統已內含IE來看..使用IE核心還是比較方便的做法

===================引 用 leveon 文 章===================
換個瀏覽器 會不會比較好呢


http://www.youtube.com/watch?v=elPXUTXBLEc


------
熊的學習 http://huwk.blogspot.com
Coffee
版主


發表:31
回覆:878
積分:561
註冊:2006-11-15

發送簡訊給我
#4 引用回覆 回覆 發表時間:2012-11-13 14:14:06 IP:211.76.xxx.xxx 訂閱
這招讚,可惜deploy會很大。
樓上的有沒有試過在背景偷偷reload一次之後再顯示出來看看會不會也這樣



===================引 用 leveon 文 章===================
換個瀏覽器 會不會比較好呢


http://www.youtube.com/watch?v=elPXUTXBLEc


------
不論是否我發的文,在能力範圍皆很樂意為大家回答問題。
為了補我的能力不足之處,以及讓答案可以被重複的使用,希望大家能儘量以公開的方式問問題。
在引述到我的文時自然會儘量替各位想辦法,謝謝大家!
huwk
資深會員


發表:26
回覆:340
積分:323
註冊:2002-04-03

發送簡訊給我
#5 引用回覆 回覆 發表時間:2012-11-13 14:21:06 IP:118.163.xxx.xxx 訂閱
其實.那排大約有10個圖..有時掉到只出現一個..
若掉圖時..此時讓WEBBROWSER重LOAD一次..會多出現"一"個..
若真的要這樣子做.最保險的做法是一開始就重LOAD10次!!!!


------
熊的學習 http://huwk.blogspot.com
Coffee
版主


發表:31
回覆:878
積分:561
註冊:2006-11-15

發送簡訊給我
#6 引用回覆 回覆 發表時間:2012-11-14 18:22:52 IP:220.130.xxx.xxx 訂閱
reload 10次總比被叫去罰站的好(茶)

不過要不要試試看先把你所有的javascript都拔掉看看有沒有問題

===================引 用 huwk 文 章===================
其實.那排大約有10個圖..有時掉到只出現一個..
若掉圖時..此時讓WEBBROWSER重LOAD一次..會多出現"一"個..
若真的要這樣子做.最保險的做法是一開始就重LOAD10次!!!!


------
不論是否我發的文,在能力範圍皆很樂意為大家回答問題。
為了補我的能力不足之處,以及讓答案可以被重複的使用,希望大家能儘量以公開的方式問問題。
在引述到我的文時自然會儘量替各位想辦法,謝謝大家!
leveon
資深會員


發表:30
回覆:386
積分:303
註冊:2012-02-12

發送簡訊給我
#7 引用回覆 回覆 發表時間:2012-11-15 15:32:47 IP:118.165.xxx.xxx 訂閱
 剛看了一下  IHTMLElement的屬性是可以改的
看我把這個站的美女都變如花
bellegirl.pixnet.net/blog

沒碰到破圖的問題
或許你可以只Reload你的圖 能解決你的問題

procedure TForm1.Button1Click(Sender: TObject);
var
HTMLDocument2: IHTMLDocument2;
Element: IHTMLElement;
i: Integer;
Url : string;
begin
HTMLDocument2 := (WebBrowser1.Document AS IHTMLDocument2);
for i := 0 to HTMLDocument2.images.length -1 do begin
Element := HTMLDocument2.images.item(i, null) As IHTMLElement;
Url:=Element.getAttribute('src',0);
Element.setAttribute('src','http://photocdn.sohu.com/20100419/Img271609612.jpg',0);
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
WebBrowser1.Navigate('http://bellegirl.pixnet.net/blog') ;
end;


huwk
資深會員


發表:26
回覆:340
積分:323
註冊:2002-04-03

發送簡訊給我
#8 引用回覆 回覆 發表時間:2012-11-15 16:09:54 IP:118.163.xxx.xxx 訂閱
leveon大真是有趣

我本來是想找有沒有右鍵"顯示圖片"的方法..可是好像沒有找到..應該是我功力不好..

不知道是否有"右鍵-顯示圖片"程式的按制方法?

若有.那我用程式去送應比RELOAD整個網頁十次來得好~~


===================引 用 leveon 文 章===================
剛看了一下 IHTMLElement的屬性是可以改的
[略...]
------
熊的學習 http://huwk.blogspot.com
leveon
資深會員


發表:30
回覆:386
積分:303
註冊:2012-02-12

發送簡訊給我
#9 引用回覆 回覆 發表時間:2012-11-15 16:21:27 IP:118.165.xxx.xxx 訂閱
我的意思 是 把單張圖片的網址 再重設一次
可能是相當右鍵顯示圖片
var
HTMLDocument2: IHTMLDocument2;
Element: IHTMLElement;
i: Integer;
Url : string;
begin
HTMLDocument2 := (WebBrowser1.Document AS IHTMLDocument2);
for i := 0 to HTMLDocument2.images.length -1 do begin
Element := HTMLDocument2.images.item(i, null) As IHTMLElement;
Url:=Element.getAttribute('src',0);
// Element.setAttribute('src','http://photocdn.sohu.com/20100419/Img271609612.jpg',0);
Element.setAttribute('src',Url,0);
end;


===================引 用 huwk 文 章===================
leveon大真是有趣

我本來是想找有沒有右鍵"顯示圖片"的方法..可是好像沒有找到..應該是我功力不好..

不知道是否有"右鍵-顯示圖片"程式的按制方法?

若有.那我用程式去送應比RELOAD整個網頁十次來得好~~


===================引 用 leveon 文 章===================
剛看了一下 IHTMLElement的屬性是可以改的
[略...]
huwk
資深會員


發表:26
回覆:340
積分:323
註冊:2002-04-03

發送簡訊給我
#10 引用回覆 回覆 發表時間:2012-11-15 17:13:26 IP:118.163.xxx.xxx 訂閱
我刻意把IE的設成不顯示圖片, 模擬成掉圖的情況..
再使用該程式去測試.結果是不成功的(依然沒有顯示, 但按右鍵顯示圖片是有用的)

所以猜想實際發生時,可能也是沒有作用的.(要等實際再發生才會知道)

先送上結案分數

===================引 用 leveon 文 章===================
我的意思 是 把單張圖片的網址 再重設一次
可能是相當右鍵顯示圖片
[略...]
------
熊的學習 http://huwk.blogspot.com
leveon
資深會員


發表:30
回覆:386
積分:303
註冊:2012-02-12

發送簡訊給我
#11 引用回覆 回覆 發表時間:2012-11-15 23:54:52 IP:111.240.xxx.xxx 訂閱
喔喔 不行還送分 真拍謝
依你講的把IE設了不顯示圖片
測試了OK!!

uses
ActiveX


procedure TForm1.Button1Click(Sender: TObject);
const
IDM_SHOWPICTURE = 2269;
CGID_MSHTML: TGUID = '{DE4BA900-59CA-11CF-9592-444553540000}';
var
HTMLDocument2: IHTMLDocument2;
Element: IHTMLElement;
i: Integer;
Url : string;
CmdTarget : IOleCommandTarget;
tmpPGUID: PGUID;
Olein, Oleout: OleVariant;
begin
New(tmpPGUID);
tmpPGUID^ := CGID_MSHTML;
HTMLDocument2 := (WebBrowser1.Document AS IHTMLDocument2);
for i := 0 to HTMLDocument2.images.length -1 do begin
Element := HTMLDocument2.images.item(i, null) As IHTMLElement;
Url:=Element.getAttribute('src',0);
Element.QueryInterface(IOleCommandTarget,CmdTarget);
if CmdTarget <> nil then begin
CmdTarget.Exec(tmpPGUID, 2269, OLECMDEXECOPT_DODEFAULT, Olein,Oleout);
end;
end;
end;






===================引 用 huwk 文 章===================
我刻意把IE的設成不顯示圖片, 模擬成掉圖的情況..
再使用該程式去測試.結果是不成功的(依然沒有顯示, 但按右鍵顯示圖片是有用的)

所以猜想實際發生時,可能也是沒有作用的.(要等實際再發生才會知道)

先送上結案分數

===================引 用 leveon 文 章===================
我的意思 是 把單張圖片的網址 再重設一次
可能是相當右鍵顯示圖片
[略...]
編輯記錄
leveon 重新編輯於 2012-11-15 08:57:31, 註解 無‧
leveon 重新編輯於 2012-11-15 09:20:49, 註解 無‧
huwk
資深會員


發表:26
回覆:340
積分:323
註冊:2002-04-03

發送簡訊給我
#12 引用回覆 回覆 發表時間:2012-11-16 09:28:19 IP:118.163.xxx.xxx 訂閱
謝謝拉^^ .真是太利害了..
IEConst可以再爬些東西. 十分感謝


------
熊的學習 http://huwk.blogspot.com
leveon
資深會員


發表:30
回覆:386
積分:303
註冊:2012-02-12

發送簡訊給我
#13 引用回覆 回覆 發表時間:2012-11-16 12:24:33 IP:118.165.xxx.xxx 訂閱
測試的時候 我 Import ActiveX Control  
引入 "Microsoft HTML Object Library" 產生的MSHTML_TLB
居然有40萬行 IE真是非常可怕的東西
翻一翻 裡頭也有不少東西可以挖 沒仔細研究

有翻到
www.mobile01.com/topicdetail.php

大陸眾多牌的瀏覽器 大概都是IE核心
Chrome 本身雖然好用
但拿來做三方開發 恐怕沒那麼多資源可用




===================引 用 huwk 文 章===================
謝謝拉^^ .真是太利害了..
IEConst可以再爬些東西. 十分感謝


老大仔
尊榮會員


發表:77
回覆:835
積分:1082
註冊:2006-07-06

發送簡訊給我
#14 引用回覆 回覆 發表時間:2012-11-16 12:37:43 IP:210.61.xxx.xxx 未訂閱
之前隨便在玩WebBrowser的時候
還有個GeckoBrowser
是採用FireFox的
該計劃已經停止開發了


===================引 用 leveon 文 章===================
測試的時候 我 Import ActiveX Control
引入 "Microsoft HTML Object Library" 產生的MSHTML_TLB
居然有40萬行 IE真是非常可怕的東西
翻一翻 裡頭也有不少東西可以挖 沒仔細研究

有翻到
www.mobile01.com/topicdetail.php

大陸眾多牌的瀏覽器 大概都是IE核心
Chrome 本身雖然好用
但拿來做三方開發 恐怕沒那麼多資源可用




huwk
資深會員


發表:26
回覆:340
積分:323
註冊:2002-04-03

發送簡訊給我
#15 引用回覆 回覆 發表時間:2012-11-16 17:40:05 IP:118.163.xxx.xxx 訂閱
最新回報..自然掉圖下.CALL此方法可以讓圖重新顯示出來~~
謝謝囉

------
熊的學習 http://huwk.blogspot.com
系統時間:2017-12-12 8:49:17
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!