`
hideto
  • 浏览: 2650028 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

wxPython和PyQt的Hello World例子比较

阅读更多
wxPython和PyQt分别是wxWidgets和Qt的python绑定,wxWidgets和Qt都是跨平台的GUI库,不过前者是开源免费的,而后者是基于商业License
让我们分别看看wxPython和PyQt的Hello World程序

wxPython
首先去http://www.python.org下载Windows下的python2.5,然后去http://www.wxpython.org下载相应的Windows安装包
装好后写个hellowx.py看看效果:
import wx

class MyFrame(wx.Frame):
    def __init__(self, parent, title):

        wx.Frame.__init__(self, parent, -1, title, pos=(150, 150), size=(350, 200))

        menuBar = wx.MenuBar()
        self.SetMenuBar(menuBar)
        menu = wx.Menu()
        menu.Append(wx.ID_EXIT, "E&xit", "Exit this application")
        self.Bind(wx.EVT_MENU, self.OnTimeToClose, id=wx.ID_EXIT)
        menuBar.Append(menu, "&File")

        panel = wx.Panel(self)
        text = wx.StaticText(panel, -1, "Hello wxPython!")
        text.SetFont(wx.Font(12, wx.SWISS, wx.NORMAL, wx.BOLD))
        text.SetSize(text.GetBestSize())
        panel.Layout()

    def OnTimeToClose(self, evt):
        self.Close()

class MyApp(wx.App):
    def OnInit(self):
        frame = MyFrame(None, "Hello wxPython!")
        self.SetTopWindow(frame)
        frame.Show(True)
        return True
        
app = MyApp()
app.MainLoop()

App->Frame->MenuBar/Panel,结构很清晰

PyQt
http://www.quadgames.com/download/pythonqt/下载Windows的PyQt安装包,PyQtGPL10.exe目前只支持到Python2.4
然后写个helloqt.py看看效果:
import sys
from qt import *

class HelloButton(QPushButton):
    def __init__(self, *args):
        QPushButton.__init__(self, *args)
        self.setText("Hello World")

class HelloWindow(QMainWindow):
    def __init__(self, *args):
        QMainWindow.__init__(self, *args)
        self.button = HelloButton(self)
        self.setCentralWidget(self.button)

def main(args):
    app = QApplication(args)
    win = HelloWindow()
    win.show()
    app.connect(app, SIGNAL("lastWindowClosed()"),
    app, SLOT("quit()"))
    app.exec_loop()

if __name__ == "__main__":
    main(sys.argv)

也是App->Window->MenuBar的模式,同wx没多大区别

体验
总体觉得Qt的类名起的有点怪异,wxPython看起来很优美
分享到:
评论

相关推荐

    wxpython in action书中的例子源代码

    wxpython in action书中的例子源代码

    PyQt5中多线程模块QThread和线程池ThreadPoolExecutor解决PyQt5界面程序执行比较耗时操作无响应问题

    1.资源简介:PyQt5中使用多线程模块QThread解决了PyQt5界面程序执行比较耗时操作时,程序卡顿出现的无响应以及界面输出无法实时显示的问题,采用线程池ThreadPoolExecutor解决了ping多个IP多任务耗时问题。...

    Python tkinter快速可视化开发GUI界面指南:详细教程(附带工具),可通过拖拽实现GUI代码的开发

    Python tkinter快速可视化开发GUI界面指南:详细教程(附带工具),可通过拖拽实现GUI代码的开发,适用对象 适用于学习了TKinter并不想太麻烦写GUI代码,也不想用其他工具和框架 比如wxPython,PyQt4的同学。...

    wxPython28_python27_win32_win64.zip

    wxPython是什么 wxPython是Python语言的一套优秀的GUI...(当然Python可不止这一个GUI库,欢迎Tkinter、PyGTK、PyQt、PySide,当然用哪个是根据你的实际用途和习惯来的,常用的是wxPython与PyQt。) Win7 Win10可用

    Windows中使用wxPython和py2exe开发Python的GUI程序的实例教程

    wxPython是一款集成了Python的图形化类库的工具,而py2exe是一款将Python程序转换为exe可执行文件的程序,二者搭配可以轻松地在Windows中创建图形化程序,这里我们就来学习Windows中使用wxPython和py2exe开发Python的...

    wxPython:python首选的GUI库实例分享

    wxPython是Python语言的一套优秀的GUI图形库。允许Python程序员很方便的创建完整的、功能键全的GUI用户界面。 wxPython是作为优秀的跨平台GUI库wxWidgets的Python封装和Python模块的方式提供给用户的

    有关wxpython pyqt内存占用问题分析

    一直觉得wxpython占用内存比较多,在工作中写的一些小程序应用,一对比其它的小程序,发现内存相差确实有点大。 测试了下QT框架 复制代码 代码如下:import sys,timefrom PyQt4 import QtCore, QtGui#import wxif __...

    python GUI图形化编程wxpython的使用

     Pyqt :是python最复杂也是使用最广泛的图形化  Wx :是python当中居中的一个图形化,学习结构很清晰  Pywin :是python windows 下的模块,摄像头控制(opencv),常用于外挂制作 二、wx模块的安装: C:\Users\...

    M1及M2版本Macbook的wxPython安装包(已编译好直接安装)

    源码包:wxPython-4.1.1.tar.gz 直接用pip3 install wxPython命令安装会各种报错,经过排雷,编译成功的安装包,可直接用以下命令安装: pip3 install wxPython-4.1.1-cp39-cp39-macosx_11_0_universal2.whl

    ojuice:用Python编写的自托管Todolist应用

    创建一个新用户或尝试演示和pw qwertz 入门 这些说明将为您提供在本地计算机上运行并运行的项目的副本,以进行开发和测试。 有关如何在实时系统上部署项目的注释,请参阅部署。 先决条件 您需要安装软件什么东西...

    wxPython资料包

    wxPython in Action.chm 中文版 wxPython in Action中所有例子的源码 wxPython_Tutorial 网页版教程 wxPython_API.chm wxPython API大全 wxGlade 基于wxPython的GUI可视化设计工具

    wxpython中文教程wxpython中文教程

    wxpython中文教程wxpython中文教程wxpython中文教程wxpython中文教程wxpython中文教程wxpython中文教程wxpython中文教程wxpython中文教程wxpython中文教程

    wxPython 2.8文档和Demo

    wxPython是成熟的Python下的GUI开发工具,这个安装文件是wxPython的docs和Demo,对于wxPython的学习非常有帮助

    wxPython几本好书

    几本很不错的关于python gui的wxPython的书,包括“wxPython in Action(中文版)” 活学活用wxPython “《wxPython in Action》Noel Rappin, Robin Dunn著 2006年版”

    如何使用python图形化界面wxPython

    GUI库主要有三类:tkinter,wxPython和PyQt5,下面主要是针对wxPython的使用说明。 下面的操作均在win10 + pycharm上进行 wxPython的安装: pip install wxPython 同时还安装了两个依赖包:six和pillow 简单使用: ...

    python和wxpython资料合集

    wxPython_API.chm Python+中文手册.pdf Python入门指南 2.5b.pdf python教程.chm wxPIA_book wxPython_Tutorial wxpython-in-action-zh.pdf

    PyQt4中文教程chm版

    PyQt4,是Python中有一个非常强大的GUI工具包。相比wxpython,界面美观了很多,并且将界面设计与代码逻辑很好的分离了开来。本文件为PyQt4的中文教程CHM版,方便您的查阅和学习!

    wxpython-in-action-zh

    帮助学习wxpython,有很多例子。 建议跟着它一步步做实例,很快就可以利用wxpython做出漂亮的用户界面了。

    python用WxPython库实现无边框窗体和透明窗体实现方法详解

    wxPython是作为优秀的跨平台GUI库wxWidgets的Python封装和Python模块的方式提供给用户的。 下面的2个实例代码是实现wxPython窗体特殊效果演示大家可以研究下 wxPython无边框窗体实现代码如下: import wx class ...

Global site tag (gtag.js) - Google Analytics