b = wx.BoxSizer( wx.VERTICAL )

b.Add(self.notebook1, 1, wx.EXPAND)

self.parent.SetSizer(b)

解析以上代码原理,说明布局管理器的作用:

以上代码主要是用来为 GUI 界面添加一个 wx.Notebook 控件,并将其放置于一个 wx.BoxSizer 布局管理器中,以便在窗口大小改变时进行自动布局。下面对代码进行一步步的解析:

  1. 创建一个 wx.BoxSizer 对象

首先,我们创建了一个名为 bwx.BoxSizer 布局管理器对象:

b = wx.BoxSizer( wx.VERTICAL )

在上面的代码中,我们通过指定参数 wx.VERTICAL 来创建一个垂直方向的 wx.BoxSizer 对象。

  1. 添加 wx.Notebook 控件到布局管理器中

接下来,我们将 wx.Notebook 控件添加到布局管理器 b 中,调用了 b.Add() 方法:

b.Add(self.notebook1, 1, wx.EXPAND)

在上面的代码中,我们将 self.notebook1 这个 wx.Notebook 控件添加到了布局管理器中,并指定了两个参数:

  • 第一个参数:需要添加到布局管理器中的控件,即 self.notebook1
  • 第二个参数:控件占据的比例,即在布局管理器中所占据的空间百分比。在这里,我们使用了参数值 1,表示这个 wx.Notebook 控件在布局管理器中占据全部空间。
  • 第三个参数:控件的布局方式。在这里,我们使用了参数值 wx.EXPAND,表示当窗口大小改变时,这个 wx.Notebook 控件应该填满整个布局管理器。
  1. 将布局管理器设置为窗口的 sizer

最后,我们使用 SetSizer() 方法将布局管理器 b 设置为窗口的 sizer,从而使 wx.Notebook 控件和其他控件能够正确地自动布局:

self.parent.SetSizer(b)

在上面的代码中,我们将 b 布局管理器对象设置为窗口的 sizer,其中 self.parent 可以理解为当前控件的父级,即窗口。

综上所述,以上代码的作用是:创建一个 wx.BoxSizer 布局管理器对象,将一个 wx.Notebook 控件添加到布局管理器中,并将布局管理器设置为窗口的 sizer,以便在窗口大小改变时进行自动布局。

布局管理器wx.BoxSizer的更多相关文章

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

    text = ("This is text box")         panel = wx.Panel(self, -1)         chkAll1 = wx.CheckB ...

  2. Grid 布局管理器

    Grid 布局管理器: Grid布局类wx.GridSizer,Grid布局以网格形式对子窗口或控件进行摆放,容器被分成大小相等的矩形,一个矩形中放置一个子窗口或控件. wx.GridSizer构造方 ...

  3. StaticBox布局管理器

    wx.StaticBoxSizer构造方法如下: wx.StaticBoxSizer(box,orient = HORIZONTAL) box 是静态框对象,orient参数是布局方向  wx.HOR ...

  4. Swing布局管理器介绍

    创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://zhangjunhd.blog.51cto.com/113473/128174 当选 ...

  5. java基础 布局管理器

    概念: 组建在容器(比如JFrame)中的位置和 大小 是由布局管理器来决定的.所有的容器都会使用一个布局管理器,通过它来自动进行组建的布局管理. 种类: java共提供了物种布局管理器:流式布局管理 ...

  6. JAVA GUI布局管理器

    边界布局管理器: a.布局方式:是把整个容器划分为五个部分.东西南北中,南北要贯通,中间最大 (不仅是中间的范围最大,权利也最大)当周边不存在的时候中间会占领周边,当中间不存在的时候周边不能占据中间 ...

  7. Java Swing 第03记 布局管理器

    几种Swing常用的布局管理器 BorderLaout 它将容器分为5个部分,即东.南.西.北.中,每一个区域可以容纳一个组件,使用的时候也是通过BorderLayout中5个方位常量来确定组件所在的 ...

  8. AWT布局管理器

    布局管理器 容器内可以存放各种组件,而组件的位置和大小是由容器内的布局管理器来决定的.在AWT中为我们提供了以下5种布局管理器: ①   FlowLayout 流式布局管理器 ②   BorderLa ...

  9. SWT布局管理器

    一.充满式布局管理器(FillLayout类) FillLayout类是最简单的布局类,它把组件摆放成一行或者一列,并强制组件大小一致.一般,组件的高度与最高的组件一致,宽度与最宽的组件相同.,它里面 ...

  10. Java——布局管理器

    在Swing中使用的所有布局管理器都可以实现LayoutManager接口,在Swing中主要使用的5种布局管理器:FlowLayout.BorderLayout.GridLayout.CardLay ...

随机推荐

  1. 搭建Spring的源码环境

    搭建Spring的源码环境,包括以下几个步骤: 1.从Spring官网一步步找到Spring源码在github上的位置,并拉取Spring源码 2.安装和配置Gradle,用于构建Spring的源码 ...

  2. 【七侠传】冲刺阶段--Day6

    [七侠传]冲刺阶段--Day6 团队成员 20181221曾宇涛 20181202李祎铭 20181209沙桐 20181215薛胜瀚 20181216杨越麒 20181223何家豪 20181232 ...

  3. 安装filebeat

    Filebeat是本地文件的日志数据采集器. 作为服务器上的代理安装,Filebeat监视日志目录或特定日志文件,tail file,并将它们转发给Elasticsearch或Logstash进行索引 ...

  4. git-开发常用命令

    1.本地克隆代码 git clone http地址 2.查看所有分支 git branch -a remotes/origin开头 :远程分支 3.切换分支 git checkout 分支名 4.删除 ...

  5. flume往kafka中导入数据

    1.编辑flume的配置文件 a1.sources = r1 a1.channels = c1 # Describe/configure the source a1.sources.r1.type = ...

  6. 基于python-nmap的扫描代码

    本次代码只利于人员进行分析,没有啥用,小学期作业,被迫工作. 1 import tkinter 2 from tkinter import * 3 import time 4 import nmap ...

  7. ssh连接不上、Xshell意外关闭Socket error Event: 32 Error: 10053.

    Xshell意外关闭可能会出现这种问题,如遇如下错误可解决: Connecting to 47.106.80.28:22- Connection established. To escape to l ...

  8. vue组件 子组件没有事件怎么 向父组件传递数据

    通过ref去接收值!!! 需求图片 代码实现 //----------父组件 <div class="fingerprint-bottom"> <el-tabs ...

  9. 20200921--同行列对角线的格(奥赛一本通P89 2 二维数组)

    输入三个自然数n,i,j(1<=i<=n,1<=j<=n),输出在一个n*n格的棋盘中(行列均从1开始编号),与格子(i,j)同行,同列,同一对角线的所有格子的位置. 如:n= ...

  10. Jmeter九、jmeter中的函数和beanshell

    beanshell  松散类型的脚本语言 可在里面自定义函数