×

在VB.net中如何显示网络上的图片

Kalet Kalet 发表于2009-03-20 12:00:13 浏览170 评论0

抢沙发发表评论

在VB.net中,显示图片很简单:

PictureBox1.Image=Image.FromFile(FileName) 在VB.net中如何显示网络上的图片





但是这种办法不能用于显示Internet上的图片,因为Image.FromFile不支持URI格式。那么怎么办呢?

其实 .net 为我们准备了一套很方便的方法。在.net中,网上的资源(图片,动画,声音,网页等等)是通过System.Net.WebRequest 和 System.Net.WebResponse 两个类来得到的。简单的说,得到Internet上的图片的步骤是这样的(以http://images.sohu.com/LOGO1.gif为例):

1. 先通过URI建立一个WebRequest(请参考WebRequest构造函数):
Dim wr As WebRequest = WebRequest.Create("http://images.sohu.com/LOGO1.gif") 在VB.net中如何显示网络上的图片

2. 然后通过其GetResponse方法得到一个WebResponse:
Dim res As WebResponse= wr.GetResponse

3. 通过WebResponse.GetResponseStream方法得到的流来创建Bitmap:
Dim bmp As New Bitmap(res.GetResponseStream)

4. 这样,就能显示图片了:
PictureBox1.Image=bmp
在VB.net中如何显示网络上的图片
怎么样,不复杂吧。有两点要注意,一是要把这段代码用try包起来,因为服务器返回404等错误的时候会引发异常;二是最好把这个过程放到单独的线程里,以免程序界面没有响应。


群贤毕至

访客