wxPython笔记(一)

Frame即为框架,可以直接理解为一个窗口。要创建一个Frame的子类,需要调用Frame类的构造函数,原型如下:

 wx.Frame(parent, id=-1, title=””, pos=wx.DefaultPosition, size=wx.DefaultSize, style=wx.DEFAULT_FRAME_STYLE, name=”frame”)

 各参数含义:

  parent:顶级窗口直接使用None。

  id:标识,有三种赋值方式:1、自己指定一个正数,但确保同一窗体中不能重复;2、取值-1或wx.ID_ANY,表示由系统自动分配,可以通过frame.GetId()来获取此值;3、使用wx.NewId()函数来创建。

  pos:窗口位置。

  size:窗口大小。

  style:样式,其中,wx.DEFAULT_FRAME_STYLE的值为:wx.MAXIMIZE_BOX | wx.MINIMIZE_BOX | wx.RESIZE_BORDER |   wx.SYSTEM_MENU | wx.CAPTION | wx.CLOSE_BOX

  增加一个样式使用“|”, 去除一个样式使用"^"

wxPython的使用

1)创建应用程序对象
app = wx.App()

2)进入应用程序管理
app.MainLoop()

3)创建窗口 window –Frame
win = wx.Frame(None)
或者
win = wx.Frame(None, title="Simple Editor")


4)显示窗口:
win.Show()

eg: 仅有一个窗口的程序
#!/usr/bin/python
#encoding=utf-8

import wx
app=wx.App()            #创建应用程序对象
win=wx.Frame(None)
win.Show()

app.MainLoop()          #进入程序管理



5)在窗口添加组件
格式为:
btn = wx.Button(win)

a.给组件设置 title , label 信息.
格式为:
loadButton = wx.Button(win, label='Open')

b.给组件设置位置(pos),尺寸(size)

6)添加组件---文本框
a.默认文本框:text control :wx.TextCtrl
b.设置为文本区:style=wx.TE_MULTILINE |wx.HSCROLL
#!/usr/bin/python
#encoding=utf-8

import wx
app=wx.App()            #创建应用程序对象
win=wx.Frame(None,title="我的程序",size=(410,335))

fbutton=wx.Button(win,label="open",pos=(225,5),size=(80,25))
sbutton=wx.Button(win,label="save",pos=(315,5),size=(80,25))
filename=wx.TextCtrl(win,pos=(5,5),size=(210,25))  
content=wx.TextCtrl(win,pos=(5,35),size=(390,260),style=wx.TE_MULTILINE| wx.HSCROLL)  #wx.TE_MULTILINE来获取多行文本区(默认有垂直滚动条)以及wx.HSCROLL来获取水平滚动条
win.Show()

app.MainLoop()          #进入程序管理

原文地址:https://www.cnblogs.com/gracyandjohn/p/3908378.html