在用WxPython 做桌面应用的界面时,为了提高使用者的体验,总会面临窗体的布局分割和排版的问题。 WxPython 提供了 wx.BoxSizer 和 wx.GridSizer 两个控件, 结合用起来,就基本能实现对窗体的布局分割, 比如实现九宫格
# encoding: utf-8
"""
@author:陈年椰子
@contact: [email protected]
@version: 1.0
@project:test
@file: wx_gui6.py
@time: 2022-3-9 8:35
说明 wx.FlexGridSizer和wx.GridSizer没
"""
# coding=utf-8
import wx
class MainWindow(wx.Frame):
def __init__(self, parent, title, size=(600,600)):
wx.Frame.__init__(self, parent=parent, title=title, size=size)
self.Center() # 设置窗口居中
# 放一个面板,用于布局其他控件
panel = wx.Panel(parent=self)
# 创建按钮列表
btn_lst = []
for i in range(1,10):
btn_lst.append(( wx.Button(panel, label="按钮"+str(i)), 0, wx.EXPAND))
# 创建grid,垂直缝隙,水平缝隙
gridsizer = wx.GridSizer(cols=3, rows&