当前位置:编程学习 > VB >>

如何在VB编写的WINDOWS应用程序读网络上的图片

读本地图片我用如下代码:
Dim pic As New StdPicture
Set pic = LoadPicture("d:/image/pp.jpg")
然后可以把 pic 画到image控件或其它控件上.现在特想找到直接读网络图片的方法. --------------------编程问答-------------------- Internet上的图片都可以按鼠标右键得到,可用Internet控件从链接地址下载。 --------------------编程问答--------------------  如果不想用ms inet 控件的话,建立一个Usercontrol,用它访问web也是一个不错的选择。。 --------------------编程问答-------------------- Option Explicit
Private Declare Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long

Private Sub Command1_Click()
    Dim url As String
    url = "http://www.csdn.net/Images/logo_csdn.gif"
    Dim f As String
    f = "d:\csdn.gif"
    If URLDownloadToFile(0, url, f, 0, 0) = 0 Then
        Picture1.Picture = LoadPicture(f)
    End If
End Sub
--------------------编程问答-------------------- Private Type TGUID
Data1 As Long
Data2 As Integer
Data3 As Integer
Data4(0 To 7) As Byte
End Type

'// 用来加载Internet上的图片
Private Declare Function OleLoadPicturePath Lib "oleaut32.dll" (ByVal szURLorPath As Long, ByVal punkCaller As Long, ByVal dwReserved As Long, ByVal clrReserved As OLE_COLOR, ByRef riid As TGUID, ByRef ppvRet As IPicture) As Long

'// 从Internet上加载图片
Private Function LoadPicture(ByVal strFileName As String) As Picture
Dim IID As TGUID
With IID
.Data1 = &H7BF80980
.Data2 = &HBF32
.Data3 = &H101A
.Data4(0) = &H8B
.Data4(1) = &HBB
.Data4(2) = &H0
.Data4(3) = &HAA
.Data4(4) = &H0
.Data4(5) = &H30
.Data4(6) = &HC
.Data4(7) = &HAB
End With

On Error GoTo LocalErr

OleLoadPicturePath StrPtr(strFileName), 0&, 0&, 0&, IID, LoadPicture
Exit Function
LocalErr:
Set LoadPicture = VB.LoadPicture(strFileName)
Err.Clear
End Function


'------------------------上面是申明部分------------------------

Private Sub Command1_Click()
'// 这里可以换成你要的地址
Set Picture1.Picture = LoadPicture("http://www.hackol.com/Images/760x60.gif")
End Sub


'以前就收集了。。呵。。 --------------------编程问答-------------------- 用web控件 --------------------编程问答-------------------- http://www.j2soft.cn/static_html/200612311946569008admin.html

这里有源码 --------------------编程问答--------------------
引用 4 楼 qq_241220652 的回复:
Private Type TGUID 
Data1 As Long 
Data2 As Integer 
Data3 As Integer 
Data4(0 To 7) As Byte 
End Type 

'// 用来加载Internet上的图片 
Private Declare Function OleLoadPicturePath Lib "oleaut32.dll" (ByVal szURLorPath As Long, ByVal punkCaller As Long, ByVal dwReserved As Long, ByVal clrReserved As OLE_COLOR, ByRef riid As TGUID, ByRef ppvRet As IPicture) As Long 

'// 从Internet上加载图…


哇!!不是吧
这是我忘密码的号在这发的
到现在还没结贴!LZ真是。。。。。-_-!!! --------------------编程问答-------------------- 这个简单啊,网上搜一下就得到答案了. --------------------编程问答-------------------- 我也想知道,正在找這方面的資料~~~~~ --------------------编程问答-------------------- 没遇到过这种情况. --------------------编程问答-------------------- 刚好我也要用到。。
补充:VB ,  多媒体
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,