2010-10-20 60 views
0

我有一个问题,在图片框中显示一些图片(多个)。获取图片fom webbrowser图片框

<div id="salary_total" style="display: block;"><table style="border: 3px solid rgb(71, 5, 6); padding-right: 1px;" bgcolor="#ffffff" cellpadding="0" cellspacing="0"><tbody><tr><td><img src="./images/counter/b.gif"></td> 
<td><img src="./images/counter/3.gif" border="0"></td> 
<td><img src="./images/counter/3.gif" border="0"></td> 
<td><img src="./images/counter/0.gif" border="0"></td> 
<td><img src="./images/counter/8.gif" border="0"></td> 
</tr></tbody></table> 

这些图片链接,显示像3308这样的数字,并且每次页面加载时都会发生变化。我怎样才能在picturebox中显示这些图片(彼此相邻)。

Try 
    Dim htmlDocument As HtmlDocument = Me.WebBrowser1.Document 
    Dim htmlElementCollection As HtmlElementCollection = htmlDocument.Images 
    For Each htmlElement As HtmlElement In htmlElementCollection 
     Dim imgUrl As String = htmlElement.GetAttribute("src") 
     If imgUrl.Contains("counter") Then 
      Me.PictureBox1.ImageLocation = imgUrl.Substring(0, 41) 
     End If 
    Next 

这一个适用于第一张照片,我怎么能有这样3个pictureboxs,和其他3张图片做同样的?像3.gif必去的第一个PictureBox的,等等?!

+0

出于好奇..你为什么显示图片而不是普通文本。您可以使用CSS来设置字体的样式。 – Shoban 2010-10-20 04:02:00

回答

1

我想通了:这是解决方案!谢谢

Try 
      Dim htmlDocument As HtmlDocument = Me.WebBrowser1.Document 
      Dim htmlElementCollection As HtmlElementCollection = htmlDocument.Images 
      Dim ImagesFound As Integer = 0 
      For Each htmlElement As HtmlElement In htmlElementCollection 
       Dim imgUrl As String = htmlElement.GetAttribute("src") 
       If imgUrl.Contains("counter") Then 
        ImagesFound+=1 
        Select Case ImagesFound 
         Case 1 
           PictureBox1.ImageLocation = imgUrl 
           Label1.Text = PictureBox1.ImageLocation.ToString() 
         Case 2 
           PictureBox2.ImageLocation = imgUrl 
           '... etc. 
        End Select 

       End If 
      Next 
     Catch ex As Exception 
     End Try 
0

首先,你ImageLocation会出来这样的:

http://www.link.com./images/counter/8.gif 

这可能不是你的原意。

其次,Shoban说你应该使用普通文本和CSS。他是对的。第三,如果你想在一个图片框中显示多个图片,你将需要制作一个图片对象并将其他图片绘制到其中。有VB.Net功能,还有本地Windows API(CopyRect?)。

如果您愿意,您可以使用多个图片框。

+0

更新了问题!谢谢 – Beho86 2010-10-20 20:45:56