получить изображения для веб-браузера - PullRequest
0 голосов
/ 20 октября 2010

У меня проблема с отображением некоторых изображений (более одного) в графическом окне.

 <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-е изображение, и так далее?!

Ответы [ 2 ]

2 голосов
/ 21 октября 2010

Я понял: вот решение!Спасибо

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 голосов
/ 20 октября 2010

Во-первых, ваш ImageLocation будет выглядеть так:

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

Это, вероятно, не то, что вы хотели.

Во-вторых, Шобан сказал, что вы должны использовать обычный текст и CSS.Он прав.

В-третьих, если вы хотите отобразить несколько изображений в одной картинке, вам нужно будет создать один объект изображения и нарисовать в нем другие изображения.Для этого есть функции VB.Net, а также собственный Windows API (CopyRect?).

Вы можете использовать несколько графических блоков, если хотите.

...