gridbagsizer

#coding:utf-8
import wx

labels=‘1 2 3 4 5 6 7 8 9 ‘.split()

class TestFrame(wx.Frame):
    def __init__(self):
        wx.Frame.__init__(self,None,-1,‘grid sizer‘)
        panel=wx.Panel(self,-1)

        sizer=wx.GridBagSizer(hgap=5,vgap=5)
        for col in range(3):
            for row in range(3):
                button=wx.Button(panel,label=labels[row*3+col])
                sizer.Add(button,pos=(row,col))
        #跨行
        bt=wx.Button(panel,label=‘sapn 3 rows‘)
        sizer.Add(bt,pos=(0,3),span=(3,1),flag=wx.EXPAND)
        #跨列
        bt=wx.Button(panel,label=‘span all columns‘)
        sizer.Add(bt,pos=(3,0),span=(1,4),flag=wx.EXPAND)
        #使最后的行和列可增长
        sizer.AddGrowableCol(3)
        sizer.AddGrowableRow(3)

        panel.SetSizer(sizer)
        sizer.Fit(self)

app=wx.App(False)
TestFrame().Show()
app.MainLoop()
时间: 2024-12-24 19:36:06

gridbagsizer的相关文章

wxpython布局管理部件wx.gridbagsizer用法示例

text = ("This is text box")         panel = wx.Panel(self, -1)         chkAll1 = wx.CheckBox(panel, ID_CHKBOX_CAN_SEL_ALL, u'全选')                chkKnown = wx.CheckBox(panel, ID_CHKBOX_CAN_UNKNOWN, u'不会')         chkUnknow = wx.CheckBox(panel, I

wxPython应用心得

在遍找可以拖拽设计wxPython窗体没找到如意的后,只有把wxPython学一学了,一个简单的项目完成后,总结一些小心得: StaticText控件改变里面的内容用SelLabel方法 整体布局用GridBagSizer,因为你只要告诉sizer你把某个控件插在哪一行哪一列,同时告知横跨多少行多少列即可 bag=wx.GridBagSizer(5,5)#生成行列间距为5的布局控件 bag.Add(btn1,pos=(0,0))#第1行第一列加入一个按钮 bag.Add(label1,pos=(

wxpython 布局管理

一个典型的应用程序是由不同的部件.这些小部件被放进容器部件.一个程序员必须管理应用程序的布局.这不是一项容易的任务.在wxPython我们有两个选择. *absolute positioning*sizers Absolute Positioning绝对位置 程序员指定位置和大小的每个小部件以像素为单位.当你使用绝对定位,你必须了解一些事情. 1.如果你改变窗口大小,大小和位置的一个小部件不改变 2.在各种平台上的应用程序看起来不同 3.更改字体在您的应用程序可能会破坏布局 4.如果你决定改变你

[译] 开始使用 wxPython [Getting started with wxPython]

原文:http://wiki.wxpython.org/Getting%20Started 1. 第一个应用程序:Hello World 按照“国际惯例”,我们先写一个“Hello World”的应用程序,下面是代码: 1 #!/usr/bin/env python 2 import wx 3 4 app = wx.App(False) # Create a new app, don't redirect stdout/stderr to a window. 5 frame = wx.Frame

wxPython常用控件

wxPython是一套基于Python的GUI,可用Python制作图形化界面程序. 本文内容为根据电子书"wxPython实战(中文版)高清.pdf"整理,若有错,欢迎指正. 注:虽然控件可以使用pos参数指定位置,但推荐使用Sizer布局控件对应用程序整体进行布局,布局控件的详细方法可以参考电子书"wxPython实战(中文版)高清.pdf"或网上自行下载相关书籍. 1. wx.StaticText:显示静态文本控件 构造函数:wx.StaticText(par

【Python】 用户图形界面GUI wxpython II

wxpython - 布局和事件 这章主要记录布局器Sizer以及事件的用法. // 目前还需要记录的:Sizer的Add方法加空白,Sizer的Layout,Sizer的Remove如何有效 ■ 布局 之前介绍的所有组件,如果不把它们的pos写死的话,页面上它们会互相重叠,导致没法看.而Sizer就是一个很好的优化布局的工具,通过此可以灵活地管理组件之间的相对位置. Sizer大概的可以被分成GridSizer(网格布局)和BoxSizer(线性布局).Sizer的用法概括起来就是创建Size

wxpython实现LED计时器

#! /usr/bin/env python #-*- encoding:UTF-8 -*- ########################## #1.正向计时\逆计时\时钟 #2.使用sizer管理布局 ########################## import wx import time import wx.gizmos as gizmos ICON_START = '|>' ICON_SUSPEND = '||' ICON_RESTART = '<|' TIMETOCOUNT

wxPython中文教程 简单入门加实例

wx.Window 是一个基类,许多构件从它继承.包括 wx.Frame 构件.技术上这意味着,我们可以在所有的 子类中使用 wx.Window 的方法.我们这里介绍它的几种方法: * SetTitle( string title ) —— 设置窗口标题.只可用于框架和对话框. * SetToolTip( wx.ToolTip tip ) —— 为窗口添加提示. * SetSize( wx.Size size ) —— 设置窗口的尺寸. * SetPosition( wx.Point pos )

Python--详解TKinter类库

为了学习python3.5的tkinter,于是我去官网找了找相关部件的一些文档,读起来有点绕口,觉得还是自己来实践实践,看看视频感觉用处会更大,然后就有了下面的一部分常用的总结, 查看tkinter类库发现它主要是分为两个部分,一个是Widget classes(部件类),另一个是Mixins(多重继承,也有人说是混入).首先我们来介绍一下Widget classes(部件类). 主要参考资料:python中tkinter库中的pack方法中optinon选项含义:http://www.cnb