rss· 投稿· 设为首页· 加入收藏· 繁體版
当前位置: 火魔网 » 程序开发 » Python

wxPython中用htmlWindow实现“关于”对话框

我在用wxPython做一个小工具的时候打算用htmlwindow组件实现一个关于对话框,在网上查阅了一些资料之后,我写出了自己的代码:

  • #需要引入的库  
  • import wx  
  • import wx.html  
  • import webbrowser  
  • about = u"""\
  •             <html><body>  
  •             <table bgcolor="#9BCD9B" width="100%" cellspacing="0" 
  •             cellpadding="0" border="1">  
  •             <tr>  
  •                 <td align="center"><h1>天天壁纸</h1></td>  
  •             </tr>  
  •             </table>  
  •               
  •             <font color = \"blue\" size=2>  
  •             <h3>简介</h3>  
  •             <ul>  
  •             <li>这是一款能随时从互联网上下载最新最酷的壁纸软件  
  •             <li>这是一款免费软件,你可以自由拷贝及传播  
  •             </ul>  
  •             </font>  
  •             <font color = \"green\" size=2>  
  •             <h3>主要特色</h3>  
  •             <ul>  
  •             <li>可以设定壁纸随机切换时间,也可以单击图片完成壁纸的迅速切换   
  •             <li>壁纸时刻自动更新,每天几十万的更新量,满足你的需要  
  •             <li>使用方便,只需在喜欢的壁纸上单击即可完成壁纸更换  
  •             <li>分类导航详细,让你快速找到喜欢的壁纸,节省时间  
  •             <li>占用很少的系统资源  
  •             <li>自动匹配电脑分辨率,确保您所切换的每张壁纸都达到完美效果  
  •             </ul>  
  •             </font>  
  •  
  •             <font color=\"red\" size=2>  
  •             <h3>免责声明</h3>   
  •             <ul>  
  •             <li>本程序所有图片均来自<a href="http://www.xxxxxx.com">http://www.deskcity.com</a>  
  •             <li>本程序与内容的出处无关,请在获得权利人(如有)合法授权后使用  
  •             </ul>  
  •             </font>  
  •  
  •             <font size=2>  
  •             <h3>联系方式</h3>   
  •             <ul>  
  •             <li><a href="http://wf1128.cn">访问网站</a>  
  •             <li><a href="mailto:zanpen2000@163.com">xxxxxxxx@163.com</a>  
  •             <li><a href="tencent://message/?uin=XXXXXXXX&Site=天天壁纸(wf1128.cn)&Menu=yes">在线qq交流</a>  
  •             </ul>  
  •             </font>  
  •             </body></html>  
  • """ 
  • class SketchAbout(wx.Dialog):  
  •     text = about;  
  •     def __init__(self, parent):  
  •         wx.Dialog.__init__(self, parent, -1, vars.title,  
  •                           size=(440, 400) )  
  •           
  •         self.html = wx.html.HtmlWindow(self)  
  •         self.html.SetPage(self.text)  
  •         button = wx.Button(self, wx.ID_OK, u"确定")  
  •  
  •         sizer = wx.BoxSizer(wx.VERTICAL)  
  •         sizer.Add(self.html, 1, wx.EXPAND|wx.ALL, 5)  
  •         sizer.Add(button, 0, wx.ALIGN_CENTER|wx.ALL, 5)  
  •  
  •         self.html.Bind(wx.html.EVT_HTML_LINK_CLICKED,self.OnLinkClicked)  
  •  
  •         self.SetSizer(sizer)  
  •         self.Layout()  
  •           
  •     def OnLinkClicked(self, linkinfo):  
  •         webbrowser.open_new_tab(linkinfo.GetLinkInfo().GetHref())  
  • 这样,当用户点击窗口中的链接的时候,还能实现url的跳转,e-mail客户端启动以及在线的QQ交流

    调用方法:

  • dlg = SketchAbout(None)  
  • dlg.ShowModal()  
  • dlg.Destroy() 
  • 本文出自python吧,原文网址:http://www.python8.org/a/fenleiwenzhang/tuxingjiemian/wxPython/2009/0901/116.html
    顶一下
    (0)
    踩一下
    (0)