Python wxPython基本教程

Python wxPython在资源上比较小,而且官方文档也不好找,wxPython在python 2.x和python 3.x安装上有区别:
以下为python3.x安装为例:
1.网上下载whl文件安装:路径:https://wxpython.org/Phoenix/snapshot-builds/
文件名解释:
wxPython_Phoenix-3.0.3.dev2812+b3485d4-cp35-cp35m-win_amd64.whl
cp35代表python版本3.5
然后用pip安装即可完成安装。

简单使用:
这里有2中方法使用,第一就是用wxFormBuilder这款开源软件直接进行简单编辑界面,生成代码可以直接复制到py文件,直接运行即可实现GUI简单开发。wxFormBuilder下载地址:
https://sourceforge.net/projects/wxformbuilder/
wxFormBuilder简单使用方法可以网上自己找找。

第二种就是直接写代码形式,这个比较考验对API的熟悉掌握程度。不过大致上都是有一个固定格式的。
格式如下:

import wx
class Frame(wx.Frame):  # 定义一个 wx.Frame的子类,以便我们更容量控制框架的内容和外观
    """ Frame class that displays an image."""
    def __init__(self, image, parent=None, id=-1,
                 pos=wx.DefaultPosition,
                 title='Hello, wxPython!'):  # 给我们的框架的构造器增加一个图像参数。这个值通过我们的应用程序
                                                # 类在创建一个框架的实例时提供
        """Create a Frame instance and display image."""  # 用 wx.StaticBitmap控件来显示这个图像,它要求一个位图
        temp = image.ConvertToBitmap()
        size = temp.GetWidth(), temp.GetHeight()
        wx.Frame.__init__(self, parent, id, title, pos, size)
        self.bmp = wx.StaticBitmap(parent=self, bitmap=temp)
class App(wx.App):  # 定义一个带有 OnInit()方法的 wx.App的子类
    """Application class."""
    def OnInit(self):  # 使用与 hello.py在同一目录下的名为 wxPython.jpg的文件创建了一个图像对象
        image = wx.Image('wxPython.jpg', wx.BITMAP_TYPE_JPEG)
        self.frame = Frame(image)
        self.frame.Show()
        self.SetTopWindow(self.frame)
        return True
def main():  # main()函数创建一个应用程序的实例并启动wxPython的事件循环
    app = App()
    app.MainLoop()
if __name__ == '__main__':
    main()
这是重写类的方法,这比较常用的,而且用wxFormBuilder生成的代码也是这样的格式。

至于各个控件的属性,方法,参数的就不一一列举,具体可以看官网文档:
https://wxpython.org/Phoenix/docs/html/main.html
http://xoomer.virgilio.it/infinity77/wxPython/widgets.html#t
个人比较推荐第二个,,感觉比较齐全
 

你可能感兴趣的:(python)