Haben Sie sich auch schon einmal gefragt, wie man Bilder aus dem Internet in einer VB-PictureBox bzw. ImageBox anzeigen kann? Ihr erster Gedanke war evtl. folgende Variante: Image1.Picture = LoadPicture("http://www.domain.de/bild1.jpg") Leider unterstützt VB diese Variante nicht Abhilfe schafft hier folgende Überlegung:
Das ganze lässt sich dann in Visual Basic wie folgt umsetzen: Option Explicit ' Benötigte API-Funktionen 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 Declare Function GetTempFileName Lib "kernel32" _ Alias "GetTempFileNameA" ( _ ByVal lpszPath As String, _ ByVal lpPrefixString As String, _ ByVal wUnique As Long, _ ByVal lpTempFileName As String) As Long ' Bild downloaden und zwischenspeichern Public Sub LoadWebPicture(oPicControl As Control, _ ByVal sURL As String, _ Optional ByVal sLocalFile As String = "", _ Optional ByVal bKillLocalFile As Boolean = True) Dim sTempFile As String Dim sTempPath As String Dim nResult As Long ' Falls kein lokaler Dateinamen zum Zwischenspeichern ' angegeben wurde, wird ein temporärer Dateiname ' erzeugt If sLocalFile = "" Then sTempPath = Environ$("TEMP") sTempFile = Space$(256) Call GetTempFileName(sTempPath, "pic", 0&, sTempFile) sLocalFile = Left$(sTempFile, InStr(sTempFile, Chr$(0)) - 1) End If ' Bilddatei downloaden nResult = URLDownloadToFile(0, sURL, sLocalFile, 0, 0) ' Bild in die Picture/ImageBox laden On Error Resume Next oPicControl.Picture = LoadPicture(sLocalFile) If Err <> 0 Then oPicControl.Picture = LoadPicture() On Error Goto 0 ' temporäre Datei ggf. löschen If bKillLocalFile Then Kill sLocalFile End Sub Beispiel: Private Sub Command1_Click() LoadWebPicture Image1, _ "http://www.vbarchiv.net/partner/images/cd2_200x166_1.jpg" End Sub Dieser Tipp wurde bereits 25.425 mal aufgerufen.
Anzeige
![]() ![]() ![]() (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
vb@rchiv CD Vol.6 ![]() ![]() Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! Online-Update-Funktion Entwickler-Vollversionen u.v.m. Tipp des Monats Neu! sevEingabe 3.0 ![]() Einfach stark! Ein einziges Eingabe-Control für alle benötigten Eingabetypen und -formate, inkl. Kalender-, Taschenrechner und Floskelfunktion, mehrspaltige ComboBox mit DB-Anbindung, ImageComboBox u.v.m. |
||||||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |