wxPython - 高级控件之HtmlWindow

实战wxPython系列-044

本文介绍如何在Python的GUI工具中嵌入HTML页面。

wxPython的wx.html和wx.html2模块支持解析和显示HTML文件内容。wx.html.HtmlWindow对象是一个通用的HTML浏览器,但不是一个全功能的浏览器,所以支持的功能有限。wx.html.HtmlWindow只支持HTML标准的一个子集,不支持Javascript或者CSS。如果要支持全特性的HTML渲染组件,请使用wx.html2.WebView。

一、wx.html.HtmlWindow简介

wx.html.HtmlWindow控件的目的是显示基于HTML标准字迹的富内容页面(本地文件或者通过HTTP下载的网页文件),一定创建了该窗口控件,可以通过调用SetPage和LoadPage来设置它的内容。

wx.html.HtmlWindow支持的窗口样式

wx.html.HtmlWindow发出的事件

wx.html.HtmlWindow常用方法

图1:wx.html.HtmlWindow类继承关系

二、wx.html.HtmlWindow演示

Htmlwin.py文件

#html窗口(wx.html.HtmlWindow)

import wx
import wx.html

class SampleHtmlWindow(wx.Frame):

    def __init__(self, *args, **kw):
        super(SampleHtmlWindow, self).__init__(*args, **kw)

        self.InitUi()

    def InitUi(self):
        self.SetTitle("实战wxPython: HtmlWindow演示")
        self.SetSize(400, 300)

        panel = wx.Panel(self)
        vbox = wx.BoxSizer(wx.VERTICAL)
        hbox = wx.BoxSizer(wx.HORIZONTAL)

        htmlwin = wx.html.HtmlWindow(panel, wx.ID_ANY, style = wx.NO_BORDER)
        htmlwin.SetStandardFonts()
        htmlwin.LoadPage("page.html")
        """
        htmlwin.SetPage('''
            
                
                    

这是标题

实战wxPython

通过RGB值设置背景颜色


这是一个段落

这是斜体文本 ''') """ vbox.Add((-1, 10), 0) vbox.Add(htmlwin, 1, wx.EXPAND | wx.ALL, 9) bitmap = wx.StaticBitmap(panel, wx.ID_ANY, wx.Bitmap("newt.png")) hbox.Add(bitmap, 0, wx.LEFT | wx.BOTTOM | wx.TOP, 10) btnOk = wx.Button(panel, wx.ID_ANY, "确定") self.Bind(wx.EVT_BUTTON, self.OnClose, id=btnOk.GetId()) hbox.Add((100, -1), 1, wx.LEFT) hbox.Add(btnOk, flag = wx.TOP | wx.BOTTOM | wx.RIGHT, border = 10) vbox.Add(hbox, 0, wx.EXPAND) panel.SetSizer(vbox) self.Centre() def OnClose(self, e): self.Close() def main(): app = wx.App() sample = SampleHtmlWindow(None) sample.Show() app.MainLoop() if __name__ == "__main__": main()

page.html文件



    


    
Maximum 9000
Mean 6076
Minimum 3800
Median 6000
Standard Deviation 6076

上面的示例演示了如何使用wx.html.HtmlWindow来加载一个html文件并显示它。

htmlwin = wx.html.HtmlWindow(panel, wx.ID_ANY, style = wx.NO_BORDER)
htmlwin.SetStandardFonts()
htmlwin.LoadPage("page.html")

创建wx.html.HtmlWindow对象,然后使用LoadPage方法加载文件。

图2:wx.html.HtmWindow演示

三、本文知识点


前一篇:wxPython - 高级控件之表格Grid

请关注,评论,收藏,点赞,和转发。

展开阅读全文

页面更新:2024-02-28

标签:控件   时调   单击   演示   加载   窗口   高级   页面   文件   方法   历史

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top