Snippet

Snadná obsluha dokumentu ve webbrowseru

Přidáno: 16.2.2008       Kategorie: VB.NET - XML a HTML       Autor: Jan Novák

V tomto snippetu bych rád poukázal na několik šikovných metod a vlastností HtmlDocumentu.
Zjistíte zde jak:
1.) zjistit textovou hodnotu výběru ve webbrowseru
2.) zjistit html zdroj výběru ve webbrowseru
3.) reagovat na události myši a klávesnice, které nastanou na dokumentu

To vše bez použití API.

Public Class Form1
    Dim WithEvents doc As HtmlDocument ' HtmlDocument z WebBrowseru
    Dim WithEvents itm As HtmlElement ' Aktivní prvek v dokumentu

    Private Sub ShowText()
 MsgBox(WebBrowser1.Document.DomDocument.Selection.CreateRange().Text)
        ' zobrazí text výběru v dokumentu
    End Sub

    Private Sub ShowHTML()
       MsgBox(WebBrowser1.Document.DomDocument.Selection.CreateRange().HtmlText)
        ' zobrazí zdroj výběru v dokumentu
    End Sub

    Private Sub WebBrowser1_DocumentCompleted(ByVal sender As Object, ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted
        doc = WebBrowser1.Document
        ' při navigaci přenstaví doc na aktuální HtmlDcument
    End Sub

    Private Sub doc_Click(ByVal sender As Object, ByVal e As System.Windows.Forms.HtmlElementEventArgs) Handles doc.Click ' můžeme obsluhovat některé události z doc
        itm = WebBrowser1.Document.ActiveElement
        ' při akci Click v doc nastaví aktivní element z doc
    End Sub

    Private Sub doc_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.HtmlElementEventArgs) Handles doc.MouseMove
        Me.Text = e.MousePosition.ToString
        ' zobrazuje pozici kurzoru myši když jí pohybujeme po dokumentu
        ' doporučuji prostudovat e.xxx, nachází se zde mnoho užitečných věcí
    End Sub

    Private Sub itm_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.HtmlElementEventArgs) Handles itm.KeyDown
        ' obsluha událostí aktivního elementu dokumentu
    End Sub
End Class
 
 

VBNET.CZ | © 2007 Tomáš Herceg, Tomáš Jecha | Kopírování a přejímání jakéhokoliv obsahu z tohoto webu je bez písemného svolení autorů zakázáno.