Rubrik: Grafik und Font · Bilder und Icons | VB-Versionen: VB.NET | 12.09.05 |
Heute möchten wir Ihnen eine Möglichkeit aufzeigen, wie man ein Bild, das online auf einem Webserver gespeichert ist, laden und in einem PictureBox-Control anzeigen kann.
Erstellen Sie hierzu ein neues WindowsForms-Projekt mit einem PictureBox-Control und einem CommandButton und fügen nachfolgenden Code ein:
Imports System.IO, System.Net
Public Class Form1
Inherits System.Windows.Forms.Form
Private Sub Button1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button1.Click
' Bild online laden
Dim oImg As Image = ImageFromWeb("http://www.vbarchiv.net/images/forum.gif")
If oImg Is Nothing Then
' Falls Nothing zurückgegeben wurde...
MsgBox("Bild nicht vorhanden oder Server nicht erreichbar!")
Else
' ... andernfalls Bild im PictureBox-Control anzeigen
PictureBox1.Image = oImg
End If
End Sub
' Bild von Webserver laden
Public Function ImageFromWeb(ByVal sURL As String) As Image
Try
' Web-Anfrage mit vorgegebener URL zur Bilddatei
Dim oRequest As WebRequest = WebRequest.Create(sURL)
oRequest.Method = "GET"
' Antwort unserer Anfrage...
Dim oResponse As WebResponse = oRequest.GetResponse()
Application.DoEvents()
' Stream-Objekt mit den Bilddaten erstellen
Dim oStream As New StreamReader(oResponse.GetResponseStream())
' Bild aus dem Stream-Objekt in ein Image-Objekt kopieren
Dim oImg As Image = Image.FromStream(oStream.BaseStream)
' Objekte zerstören
oStream.Close()
oResponse.Close()
' Image-Objekt zurückgeben
Return oImg
Catch ex As Exception
' Fehler: Nothing zurückgeben
Return Nothing
End Try
End Function
End Class