• wxPython使用指导


    一、wxPython简介

    这是Python一个非常不错的GUI开发库,免费、开源、跨平台,可用组件众多,借助这些组件,程序员可以快速创建完整、功能全面的用户界面,因此应用非常广泛

    二、安装方式:

    pip install wxpython

    三、wxPython简单实现

    import wx
    app = wx.App()
    #创建一个顶级窗口作为wx.Frame类的对象,设置窗体的大小
    window = wx.Frame(None, title = "wxPython Frame", size = (300,200))
    #将一个Panel对象放入框架中
    panel = wx.Panel(window)
    #添加一个StaticText对象以在窗口内的所需位置显示'Hello World',并设置位置
    label = wx.StaticText(panel, label = "Hello World", pos = (50,50))
    #通过show()方法激活框架窗口
    window.Show(True)
    #输入Application对象的主事件循环
    app.MainLoop()

    显示展示结果:

     

     四、wxPython GUI生成器的使用(wxFormBuilder):

    安装步骤:http://sourceforge.net/projects/wxformbuilder/

    可根据界面化工具生成对应的frame、button、lable、text等ui组件,并自动生成python脚本

     

     导入pycharm内,补充对应的按钮事件和方法,可简化代码的编写

    五、wx主要组件

    1、frame(窗口)

    parent = None #父元素,假如为None,代表顶级窗口

    id = None #组件的标识,唯一,假如id为-1代表系统分配id

    title = None #窗口组件的名称

    pos = None #组件的位置,就是组件左上角点距离父组件或者桌面左和上的距离

    size = None #组件的尺寸,宽高

    style = None #组件的样式

    name = None #组件的名称,也是用来标识组件的,但是用于传值

    2、TextCtrl(文本框)

    parent = None #父元素,假如为None,代表顶级窗口

    id = None #组件的标识,唯一,假如id为-1代表系统分配id

    value = None   #文本框当中的内容

             GetValue #获取文本框的值

             SetValue #设置文本框的值

    pos = None #组件的位置,就是组件左上角点距离父组件或者桌面左和上的距离

    size = None #组件的尺寸,宽高

    style = None #组件的样式

    validator = None #验证

    name = None #组件的名称,也是用来标识组件的,但是用于传值

    3、Button(按钮)

    parent = None #父元素,假如为None,代表顶级窗口

    id = None #组件的标识,唯一,假如id为-1代表系统分配id

    lable = None #按钮的标签

    pos = None #组件的位置,就是组件左上角点距离父组件或者桌面左和上的距离

    size = None #组件的尺寸,宽高

    style = None #组件的样式

    validator = None #验证

    name = None #组件的名称,也是用来标识组件的,但是用于传值

    4、事件绑定

    定义事件函数

    def openfile(event):
      path = path_text.GetValue()
      with open(path,"r",encoding="utf-8") as f: #encoding 设置文件打开时指定为utf8编码,避免写文件时出现编码错误
        content_text.SetValue(f.read())

    绑定出发事件的条件和组件

    open_button.Bind(wx.EVT_BUTTON,openfile)
  • 相关阅读:
    15回文相关问题
    14海量日志提取出现次数最多的IP
    13概率问题
    12胜者树和败者树

    pysnmp程序
    python 多线程 生产者消费者
    python多线程
    pysnmp使用
    PyYAML使用
  • 原文地址:https://www.cnblogs.com/mrwhite2020/p/14824239.html
Copyright © 2020-2023  润新知