  | 
				VFP 愛用者社區 本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.   
				 | 
			 
		 
		 
	
		| 上一篇主題 :: 下一篇主題   | 
	 
	
	
		| 發表人 | 
		內容 | 
	 
	
		logan1109
 
 
  註冊時間: 2009-06-09 文章: 24
 
  第 1 樓
  | 
		
			
				 發表於: 星期五 四月 23, 2010 5:42 pm    文章主題: 如何顯示網路上的圖片 | 
				     | 
			 
			
				
  | 
			 
			
				請問
 
該如何在form裡面顯示網路上面的圖片
 
例如 www.yahoo.com.tw\img\00001.jpg
 
感謝指教 | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		CCB2000
 
 
  註冊時間: 2009-03-25 文章: 97
 
  第 2 樓
  | 
		
			
				 發表於: 星期六 四月 24, 2010 3:32 am    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				可以使用“microsoft web 瀏覽器”控件,
 
先生成一個html文件,再用navigate()方法應該可以顯示網絡上的圖片。
 
參攷:
 
DEFINE CLASS ftxtbtns_mtextbox2 AS olecontrol
 
 
 
	Height = 24
 
	Width = 100
 
	Name = "ftxtbtns_mtextbox2"
 
 
 
	PROCEDURE mbtmp
 
 
		DO WHILE .T.
 
		   PRIVATE m.q_file
 
		   m.q_file=m.p_dirtmp+"DB"+RIGHT(SYS(3),4)+PADL(LTRIM(STR(MOD(INT(RAND()*10000),10000),4)),4,"0")
 
		   IF !ffileexist(m.q_file+"."+"*")
 
		      EXIT
 
		   ENDI
 
		ENDDO
 
 
		=FCLOSE(FCREATE(m.q_file+"."+"HTM"))
 
		IF FILE(m.q_file+"."+"HTM")
 
		   RETU m.q_file+"."+"HTM"
 
		ENDI
 
		=fmakedir(m.p_dirtmp)
 
		=FCLOSE(FCREATE(m.q_file+"."+"HTM"))
 
		IF FILE(m.q_file+"."+"HTM")
 
		   RETU m.q_file+"."+"HTM"
 
		ENDI
 
		RETU ""
 
	ENDPROC
 
 
 
	PROCEDURE mrefresh
 
 
		PRIVATE m.q_text
 
		m.q_text=EVAL(THIS.f_controlsource)
 
 
		*m.q_text=STRTRAN(m.q_text,'&','&'+'amp;')
 
		*m.q_text=STRTRAN(m.q_text,' ','&'+'nbsp;')
 
		*m.q_text=STRTRAN(m.q_text,'<','&'+'lt;')
 
		*m.q_text=STRTRAN(m.q_text,'>','&'+'gt;')
 
		*m.q_text=STRTRAN(m.q_text,'"','&'+'quot;')
 
 
		*m.q_text=STRTRAN(m.q_text,CHR(13)+CHR(10),'<br>')
 
		*m.q_text=STRTRAN(m.q_text,CHR(13),'<br>')
 
		*m.q_text=STRTRAN(m.q_text,CHR(10),'<br>')
 
 
		PRIVATE m.q_charset
 
		m.q_charset=THIS.f_charset
 
 
		IF ALLTRIM(m.q_charset)==""
 
		   DO CASE
 
		   CASE CPCURRENT(1)=936
 
		      m.q_charset="gb2312"
 
		   CASE CPCURRENT(1)=950
 
		      m.q_charset="big5"
 
		   OTHER
 
		      m.q_charset="windows-1252"
 
		   ENDC
 
		ENDI
 
 
		IF ALLTRIM(THIS.f_ftmp)==""
 
		   THIS.f_ftmp=THIS.mbtmp()
 
		ENDI
 
 
		=STRTOFILE(;
 
		   '<html>'+;
 
		   '<head>'+;
 
		   '<meta http-equiv="Content-Type" content="text/html; charset='+LOWER(ALLTRIM(m.q_charset))+'">'+;
 
		   '<style type="text/css">'+;
 
		   'body{overflow-x:visible;overflow-y:visible;margin:2px;font-size:12px;background-color:rgb('+;
 
		   LTRIM(STR(INT(MOD(THIS.PARENT.BACKCOLOR,256)/1),16))+','+LTRIM(STR(INT(MOD(THIS.PARENT.BACKCOLOR,256*256)/256),16))+','+LTRIM(STR(INT(MOD(THIS.PARENT.BACKCOLOR,256*256*256)/(256*256)),16))+');}'+;
 
		   '</style>'+;
 
		   '</head>'+;
 
		   '<body>'+;
 
		   TRIM(m.q_text)+;
 
		   '</body>'+;
 
		   '</html>',THIS.f_ftmp)
 
 
		THIS.navigate(THIS.f_ftmp)
 
	ENDPROC
 
 
 
	PROCEDURE Destroy
 
 
		IF !ALLTRIM(THIS.f_ftmp)==""
 
		   IF FILE(THIS.f_ftmp)
 
		      =pdel(THIS.f_ftmp)
 
		   ENDI
 
		ENDI
 
	ENDPROC
 
 
 
	PROCEDURE Init
 
 
		THIS.ADDPROPERTY("f_controlsource")
 
		THIS.f_controlsource=m.p_ftxtbtns_mtextbox2_f_controlsource
 
 
		THIS.ADDPROPERTY("f_charset")
 
		THIS.f_charset=m.p_ftxtbtns_mtextbox2_f_charset
 
 
		THIS.ADDPROPERTY("f_ftmp")
 
		THIS.f_ftmp=m.p_ftxtbtns_mtextbox2_f_ftmp
 
	ENDPROC
 
 
 
	PROCEDURE Refresh
 
		*** ActiveX Control Method ***
 
 
		NODEFAULT
 
	ENDPROC
 
 
 
ENDDEFINE | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		logan1109
 
 
  註冊時間: 2009-06-09 文章: 24
 
  第 3 樓
  | 
		
			
				 發表於: 星期六 四月 24, 2010 11:17 am    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				感謝指教
 
顯示網路圖片沒有問題
 
 
但是出現新的問題
 
就是網路圖片大小不一
 
不知有沒有辦法做到像 thisform.image1.stretch=1 等比例填充的功能
 
 
感謝再指教 | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		ckp6250
 
 
  註冊時間: 2004-07-30 文章: 1645
 
  第 4 樓
  | 
		
			
				 發表於: 星期六 四月 24, 2010 9:55 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				html 語法問題
 
與 vfp 無關 | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		wiselou
 
 
  註冊時間: 2007-08-07 文章: 1
 
  第 5 樓
  | 
		
			
				 發表於: 星期二 七月 13, 2010 10:48 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				這個小弟有做過....我的作法是...先下載圖檔,再由image控制項顯示...
 
由web下載圖檔,可以透過URLDownloadToFile這個API來達到目的。
 
DECLARE INTEGER URLDownloadToFile IN urlmon.dll;
 
    INTEGER pCaller,;
 
    STRING  szURL,;
 
    STRING  szFileName,;
 
    INTEGER dwReserved,;
 
    INTEGER lpfnCB
 
 
回傳值 0 表示下載成功,任何不等於 0  表示下載失敗。 | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		 | 
	 
 
  
  	 
	    
  	   | 
 	
您 無法 在這個版面發表文章 您 無法 在這個版面回覆文章 您 無法 在這個版面編輯文章 您 無法 在這個版面刪除文章 您 無法 在這個版面進行投票 您 無法 在這個版面附加檔案 您 無法 在這個版面下載檔案
  | 
   
  
		 |