PDA

View Full Version : سوال: نشان دادن تصویر از اینترنت



lootiamir
شنبه 04 خرداد 1392, 11:32 صبح
سلام ببخشید من کیخوام تو قرممم یه picturebox بزارم که عکس توش رو از یه آدرس مثلا :http://barnamenevis.org/images/misc/vbulletin4_logo_forexpand.png
بالا بیاره و عکس مورد نظر رو نشون چطور میتونم این کار رو انجام بدم؟؟؟

barnamenevisforme
شنبه 04 خرداد 1392, 11:51 صبح
سلام دوست عزیز
یه راه ساده این کار استفاده از کنترل webbrowser هست،کافیه ادرس تصویر رو در بخش url اون قرار بدین
104640

مبین رنجبر
شنبه 04 خرداد 1392, 12:02 عصر
راه اصولی این است که در پشت پرده براوزر رو لود کنید.برای اینکار باید از کلاس WebClient استفاده کنید.با استفاده از این کلاس فایل عکس رو در مسیر Temp دانلود میکنید و عکس موردنظر را از مسیر Temp لود میکنید.تنها مشکلی که میتونه وجود داشته باشه حجم بالای فایل عکس هست که اگر حجیم باشه ، برنامه شما منتظر خواهند ماند تا فایل به طور کامل دانلود شود.کد مثال دانلود فایل با استفاده از کلاس WebClient به صورت زیر است :


Dim Client as new WebClient
Client.DownloadFile(Source, Destination)
Client.Dispose

lootiamir
شنبه 04 خرداد 1392, 12:40 عصر
سلام
مرسی از پاسختون
نمیشه از picturebox استفاده

shahryari
شنبه 04 خرداد 1392, 13:42 عصر
سلام
مرسی از پاسختون
نمیشه از picturebox استفاده
سلام
چرا نمیشه؟؟؟!!!!
اینم کدش:
PictureBox1.Image = New System.Drawing.Bitmap(New IO.MemoryStream(New System.Net.WebClient().DownloadData("http://myweb.com/image.png")))

morrning
شنبه 04 خرداد 1392, 14:45 عصر
PictureBox1.Load("http://sarkesh.org/upload/privacy.jpg")

hosein320
شنبه 04 خرداد 1392, 16:36 عصر
PictureBox1.Image=image.fromfile("http://ssss.com/u.png")
شما خودتون تست کردین جواب داده:متفکر:

maxvel
شنبه 04 خرداد 1392, 17:10 عصر
Public Function LoadWebImageToPictureBox(ByVal pb _
As PictureBox, ByVal ImageURL As String) As Boolean

Dim objImage As MemoryStream
Dim objwebClient As WebClient
Dim sURL As String = Trim(ImageURL)
Dim bAns As Boolean

Try
If Not sURL.ToLower().StartsWith("http://") _
Then sURL = "http://" & sURL
objwebClient = New WebClient()


objImage = New _
MemoryStream(objwebClient.DownloadData(sURL))
pb.Image = Image.FromStream(objImage)
bAns = True
Catch ex As Exception

bAns = False
End Try

Return bAns

End Function


اینجوری استفاده کن


LoadWebImageToPictureBox(PictureBox1, "http://barnamenevis.org/attachment.php?attachmentid=104640&d=1369464672")

موفق باشید

omidpa22
پنج شنبه 09 خرداد 1392, 23:06 عصر
من تو برنامم این کارو کردم
این تابع رو تو سورست بزار
Private Sub find_url(ByVal id As String)

Dim ht As HtmlElementCollection
Dim img As String = ""
ht = WebBrowser1.Document.Images
For Each x As HtmlElement In ht
If x.Id = id Then
img = x.OuterHtml
Exit For
End If
Next
If Not img.Length = 0 Then
Dim dl As New WebClient
Dim path As String = ""
Dim sp() As String = Regex.Match(img, "src=.+?(.+?)" + Chr(34), RegexOptions.IgnoreCase).Groups(1).Value.Split("'")
path = sp(0).ToString
Dim files_path As String = Environment.GetFolderPath(Environment.SpecialFolde r.ApplicationData) + "\" + path.Substring((path.LastIndexOf("/") + 1), path.Length - path.LastIndexOf("/") - 1)
dl.DownloadFile(path, files_path)
Dim b As New Bitmap(files_path)
PictureBox1.Image = b

Else
MsgBox("Not found picture. pls report to admin site !", MsgBoxStyle.Exclamation, "Error IMG")
End If


بعد با این تکه کد قسمت دایو کد اچ تی ام ال او عکستو بزار تو کد زیر به جای کد من
find_url("omidimo")

چون لینک عکس برای کار من متغییر بود و همش تغییر میکرد از این روش اون رو فراخانی کردم!

morrning
سه شنبه 14 خرداد 1392, 15:49 عصر
فکر نکنم کاری از این راحتر هم باشه
PictureBox1.Load("http://sarkesh.org/upload/privacy.jpg")