pack布局的情况下有pack_forget()方法让控件“不再显示”但控件还存在可以再次pack出来

from tkinter import *

root = Tk()

l1 = Label(root, text='pack_forget')
b3 = Button(root, text='按钮') b1 = Button(root, text='隐藏', command=b3.pack_forget)
b2 = Button(root, text='显示', command=b3.pack) l1.pack(fill=X)
b1.pack(fill=X)
b2.pack(fill=X)
b3.pack() root.mainloop()

grid,place布局下也有对应的grid_forget(),place_forget()

这个控件只是不再显示,但依然存在 在内存里 !!

还有一个destroy(),但是这个是“销毁”,是无法重现的

除非控件不再用了,或者是想释放内存,否则不要destroy

from tkinter import *

root = Tk()

button_list = []

def add_button():
b = Button(root, text='按钮')
b.pack(fill=X)
button_list.append(b) def reduce_button():
if button_list:
b = button_list.pop()
# b.pack_forget()
b.destroy() b1 = Button(root, text='添加按钮', command=add_button)
b2 = Button(root, text='减少按钮', command=reduce_button) b1.pack()
b2.pack() root.mainloop()

效果图

#

[tkinter]隐藏/销毁控件的更多相关文章

  1. jquery设置checkbox状态,设置dropdownlist选中值,隐藏某控件,给某控件追加东西

    jquery设置checkbox状态 $("[ID$=chkType]").attr("checked", true); jquery设置dropdownlis ...

  2. 百度地图隐藏缩放控件比例尺Logo

    对于百度地图最新版V3.7.3,以前的隐藏控件方法失效,可用以下方法隐藏: 1.隐藏缩放控件: mMapView.showZoomControls(false); 2.隐藏比例尺: mMapView. ...

  3. C#在截屏时将截屏之前需要隐藏的控件也截入

    最近我在项目中遇到一个让我十分头疼的问题,就是我在截屏时也将截屏之前隐藏的控件也截入了. 情况:我在Winform窗体有个截屏功能按钮,实现在调用WPF全屏后截屏,但在截屏WPF界面前将界面里的一个L ...

  4. TOleControl(WebBrowser1).Visible := False 这样就可以隐藏浏览器控件

    TOleControl(WebBrowser1).Visible := False 这样就可以隐藏浏览器控件了. ------------------------------------------- ...

  5. OAF SubTabLayoutBean隐藏子控件

    SubLayout隐藏子控件有两种方法 OASubTabLayoutBean layBean = (OASubTabLayoutBean) webBean.findIndexedChildRecurs ...

  6. 在VisualStudio 工具箱中隐藏用户控件

    当我们创建一个用户控件后,VisualStudio会自动将其添加到工具箱中,本来这是一个比较贴心的设计.但是,有的时候,我们并不想将用户控件放到工具箱中. 例如:在WPF中,为了避免一个页面的控件过多 ...

  7. GridView绑定数据与隐藏指定控件(模板列)

    1.1.    GridView绑定数据 1)       可以配置SqlDataSource数据源,修改select语句生成框架(不想手动绑定) 2)       删除DataSourceID属性和 ...

  8. Android 滑动RecyclerView时隐藏部分控件

    在使用RecyclerView控件时,上下拖动控件时的时候,需要实时的隐藏与显示部分控件,已到达很好的用户体验.   原理很简单,当RecyclerView拖动至最上层时显示控件,当RecyclerV ...

  9. video视频标签自定义显示隐藏播放控件&Shadow DOM

    方法一:controlslist属性 controlslist="nodownload nofullscreen noremoteplayback" controlslist仅三种 ...

随机推荐

  1. springboo+nginx测试负载均衡

    1:之前只是用nginx调用了boot_8044这一个服务,这次新建一个boot_8055服务,并在linux上启动: 两个boot我都是放在 /myprojects 目录下的(自定义,能启动就行) ...

  2. 一丶HTML介绍

    import socket def main(): sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.bind(('local ...

  3. SQL优化(面试题)

    因为现在面试经常需要问的需要SQL优化,问的具体操作步骤时候的常见做法,所以网上总结这些操作步骤: SQL优化的具体操作: 1.在表中建立索引,优先考虑where.group by使用到的字段. 2. ...

  4. 初探 Liunx 的命令模式(一)

    1.从 X window 切换到  纯命令模式 Ctrl+Alt+[F2-F6].切换回来 Ctrl+Alt+[F2-F6]. 2. 1)CentOS Linux 7 (Core)代表 Linux d ...

  5. SpringBoot jar 注册windows服务

    1.pom.xml中添加 <plugin> <groupId>cn.joylau.code</groupId> <artifactId>joylau-s ...

  6. elsticsearch在kibanna中的操作

    #建立索引 PUT /es_note_tel{ "settings": { "number_of_shards": 1 }, "mappings&qu ...

  7. C++11 带来的新特性 (2)—— 统一初始化(Uniform Initialization)

    1 统一初始化(Uniform Initialization) 在C++ 11之前,所有对象的初始化方式是不同的,经常让写代码的我们感到困惑.C++ 11努力创造一个统一的初始化方式. 其语法是使用{ ...

  8. lombok @EqualsAndHashCode 注解讲解

    官方文档:@EqualsAndHashCode 原文中提到的大致有以下几点: 1. 此注解会生成equals(Object other) 和 hashCode()方法. 2. 它默认使用非静态,非瞬态 ...

  9. react生命周期,中间件、性能优化、数据传递、mixin的使用

    https://github.com/lulujianglab/blog/issues/34 一.生命周期 1,初始化的执行顺序,初始生命周期执行过程详解 class initSate extends ...

  10. Angular6 用户自定义标签开发

    参考地址:https://www.jianshu.com/p/55e503fd8307