我在图片框中显示一些图片(不止一张)时出现问题。
<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的数字,每次页面加载时都会更改。如何在图片框中显示这些图片(彼此相邻)。
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个以上的图片框,并为其他3张图片做同样的事情?,像3.gif将会转到第1张图片盒,依此类推?!
答案 0 :(得分:2)
我明白了:这是解决方案!感谢
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
答案 1 :(得分:0)
首先,ImageLocation会像这样出现:
http://www.link.com./images/counter/8.gif
这可能不是你想要的。
其次,Shoban说你应该使用常规文本和CSS。他是对的。
第三,如果要在单个图片框中显示多个图像,则需要制作单个图像对象并将其他图像绘制到其中。有VB.Net函数和本机Windows API(CopyRect?)。
如果您愿意,可以使用多个图片框。