python中wxpython模块_python下wxpython模块控件的排版

#coding=utf-8

import wx

class MyFrame(wx.Frame):

def __init__(self, parent, id):

wx.Frame.__init__(self, parent, id, u’测试面板Panel’, size = (400, 300))

#创建面板

panel = wx.Panel(self)

#创建open,save按钮

self.bt_open = wx.Button(panel,label=’open’)

self.bt_save = wx.Button(panel,label=’save’)

#创建文本,左对齐,注意这里style=wx.TE_LEFT,不是wx.ALIGN_LEFT ,表示控件中的输入光标是靠左对齐。

self.st_tips = wx.StaticText(panel ,0,u”请输入文件路径”,style=wx.TE_LEFT )

self.st_tips2 = wx.StaticText(panel ,0,u”文件路径:”,style=wx.TE_LEFT )

self.text_filename = wx.TextCtrl(panel,style=wx.TE_LEFT)

#创建文本内容框,多行,垂直滚动条

self.text_contents = wx.TextCtrl(panel,style=wx.TE_MULTILINE|wx.HSCROLL)

#添加容器,容器中控件按横向并排排列

bsizer_top = wx.BoxSizer(wx.VERTICAL)

#添加容器,容器中控件按纵向并排排列

bsizer_center = wx.BoxSizer(wx.HORIZONTAL)

bsizer_bottom = wx.BoxSizer(wx.HORIZONTAL)

#在容器中添加st_tips控件,proportion=0 代表当容器大小变化时,st_tips控件的大小不变

#flag = wx.EXPAND|wx.ALL中,wx.ALL代表在st_tips控件四周都增加宽度为x的空白,x取border参数的值,本例是border=5

# wx.EXPAND代表st_tips控件占满可用空间。

bsizer_top.Add(self.st_tips,proportion=0,flag=wx.EXPAND|wx.ALL, border = 5 )

#proportion=1 代表当容器大小变化时,st_tips2控件的大小变化,变化速度为1

bsizer_center.Add(self.st_tips2,proportion=0,flag=wx.ALL|wx.ALIGN_CENTER_VERTICAL|wx.ALIGN_LEFT,border = 5 )

#proportion=2 代表当容器大小变化时,text_filename控件的大小变化,变化速度为2

bsizer_center.Add(self.text_filename,proportion=2,flag=wx.EXPAND|wx.ALL,border=5)

bsizer_center.Add(self.bt_open,proportion=1,flag=wx.ALL,border=5)

bsizer_center.Add(self.bt_save,proportion=0,flag=wx.ALL,border=5)

bsizer_bottom.Add(self.text_contents,proportion=1 ,flag = wx.EXPAND|wx.ALL,border =5 )

#wx.VERTICAL 横向分割

bsizer_all = wx.BoxSizer(wx.VERTICAL)

#添加顶部sizer,proportion=0 代表bsizer_top大小不可变化

bsizer_all.Add(bsizer_top,proportion=0,flag=wx.EXPAND|wx.ALL,border=5)

bsizer_all.Add(bsizer_center,proportion=0,flag=wx.EXPAND|wx.ALL,border=5)

#添加顶部sizer,proportion=1 代表bsizer_bottom大小变化

bsizer_all.Add(bsizer_bottom,proportion=1,flag=wx.EXPAND|wx.ALL,border=5)

self.Bind(wx.EVT_BUTTON,self.onOpen,self.bt_open)

#self.Bind(wx.EVT_BUTTON, self.OnCloseMe, button)

panel.SetSizer(bsizer_all)

def onOpen(self,event):

self.text_contents.AppendText(str(self.GetSizeTuple()))

self.text_contents.AppendText(str(self.bt_open.GetSizeTuple()))

self.text_contents.AppendText(str(self.text_filename.GetSizeTuple()))

self.SetSize((700,600))

self.text_contents.AppendText(str(self.GetSizeTuple()))

self.text_contents.AppendText(str(self.bt_open.GetSizeTuple()))

self.text_contents.AppendText(str(self.text_filename.GetSizeTuple()))

if __name__ == ‘__main__’:

app = wx.PySimpleApp()

frame = MyFrame(parent = None, id = -1)

frame.Show()

frame.Center()

app.MainLoop()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值