wxPython - Classe HTMLWindow

La bibliothèque wxHTML contient des classes pour analyser et afficher le contenu HTML. Bien que ce ne soit pas destiné à être un navigateur complet, l'objet wx.HtmlWindow est un visualiseur HTML générique.

Le constructeur de classe HtmlWindow prend un aspect familier -

(Parent, id, pos, size, style)

Cette classe prend en charge les styles suivants -

SN Styles et description
1

wxHW_SCROLLBAR_NEVER

N'affichez jamais les barres de défilement, même si la page est plus grande que la fenêtre

2

wxHW_SCROLLBAR_AUTO

Afficher les barres de défilement uniquement si la taille de la page dépasse la taille de la fenêtre

3

wxHW_NO_SELECTION

Ne pas autoriser l'utilisateur à sélectionner du texte

Les classeurs d'événements suivants sont disponibles pour cette classe -

SN Événements et description
1

EVT_HTML_CELL_CLICKED

Un wxHtmlCell a été cliqué

2

EVT_HTML_CELL_HOVER

La souris est passée sur une wxHtmlCell

3

EVT_HTML_LINK_CLICKED

Un wxHtmlCell contenant un lien hypertexte a été cliqué

Les fonctions membres suivantes de cette classe sont fréquemment utilisées -

SN Fonctions et description
1

AppendToPage()

Ajoute un fragment HTML au texte actuellement affiché et actualise la fenêtre

2

HistoryBack()

Retourne à la page précédemment visitée

3

HistoryForward()

Va à la page suivante de l'histoire

4

LoadPage()

Charge un fichier HTML

5

OnLinkClicked()

Appelé lorsqu'un lien hypertexte est cliqué

6

SetPage()

Définit le texte balisé avec des balises HTML comme contenu de page

Le code suivant affiche un simple navigateur HTML. Lors de l'exécution du code, une boîte de dialogue TextEntry s'affiche et vous demande de saisir une URL. La méthode LoadPage () de la classe wx.HtmlWindow affiche le contenu dans la fenêtre.

import  wx 
import  wx.html 
  
class MyHtmlFrame(wx.Frame): 
   def __init__(self, parent, title): 
      wx.Frame.__init__(self, parent, -1, title, size = (600,400)) 
      html = wx.html.HtmlWindow(self) 
		
      if "gtk2" in wx.PlatformInfo: 
         html.SetStandardFonts() 
			
      dlg = wx.TextEntryDialog(self, 'Enter a URL', 'HTMLWindow') 
		
      if dlg.ShowModal() == wx.ID_OK: 
         html.LoadPage(dlg.GetValue()) 
			
app = wx.App()  
frm = MyHtmlFrame(None, "Simple HTML Browser")  
frm.Show()  
app.MainLoop()