以下為需要改寫的方法,如果imgPath 傳的是圖片網址,這個方法改怎么寫?
Public Function RTS_UpdateImageData_m(ByVal imgPath As String) As Long
Dim updatedata() As Byte
Dim writelen As Long
'Dim imgPath As String
'imgPath = "c:\\01.jpg"
Dim Mst As ADODB.Stream
'----------------------------------------
Set Mst = New ADODB.Stream
Mst.Type = adTypeBinary '二進制型別
Mst.Open
Mst.LoadFromFile imgPath '加載圖片,imgPath為圖片路徑
'----------------------------------------
updatedata = Mst.Read '讀取檔案流
writelen = UBound(updatedata) - LBound(updatedata) + 1 '獲取陣列的長度
RTS_UpdateImageData_m = RTS_UpdateImageData(VarPtr(updatedata(0)), writelen)
End Function
uj5u.com熱心網友回復:
uj5u.com熱心網友回復:
稍微改改應該就可以了吧?------不知是不是可以直接使用網路地址,沒這樣用過。加入不能直接使用網路地址:
增加一個對imgPath 的判斷,如果是網路地址就用urldownloadtofile函式下載到本地,然后參考本地的地址即可。
uj5u.com熱心網友回復:
不能直接使用網路地址,判斷不需要增加,imgPath 肯定是網路地址,就是想求助改造成直接可以用的。
uj5u.com熱心網友回復:
搜urldownloadtofile函式uj5u.com熱心網友回復:
先下載下來。保存為本地檔案,再存到資料庫。uj5u.com熱心網友回復:
先下載下來吧uj5u.com熱心網友回復:
使用picture 加載網路圖片。然后保存PICTURE中的圖片到本地即可。在讀取寫到資料庫uj5u.com熱心網友回復:
uj5u.com熱心網友回復:
這樣不行,如果存盤圖片路徑,在資料表必須增加一個欄位,比如 路徑,文本型別,大小100位元組足矣,然后將圖片路徑存盤在 路徑 欄位,如果是存盤二進制圖片, 路徑欄位為空。在程式中判斷 路徑 是否為空,如果空,或不空使用判斷陳述句,呼叫不同的圖片加載方法:
Dim cn As New ADODB.Connection, RS As New ADODB.Recordset
'不知道你的資料庫連接與資料表連接,這部分代碼略
If RS!路徑 = "" Then
'你讀取二進制資料并顯示圖片的代碼
ElseIf RS!路徑 <> "" Then
Dim LUJ As String
LUJ = RS!路徑
Image1.Picture = LoadPicture(LUJ)
'Image1是顯示圖片的控制元件名稱
End If
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/79603.html
標籤:VB基礎類
上一篇:讀取txt 檔案中資料與excel中的資料比較,并找出出現頻率最高的一組
下一篇:求助vb編程
