(七)python tkinter GUI简单化编程之容器控件


创作不易,请多包涵支持,谢谢!


python tkinter GUI简单化编程之文章目录(点击可传送)

python tkinter GUI简单化编程之文章目录


一、自我介绍、封装及使用方法

本系列文章将先以封装python的tkinter库为目标进行讲解,后续将会再封装其他python的GUI库。具体可从第一章开始浏览,后续不再阐述。


二、封装容器控件

在第一章python-GUI简单化编程之基础窗口中我们已经import载入封装的tkinter以及要用的的其他库,并添加了封装基础窗口封装顶层窗口数据组合框控件调整数据组合框控件按钮组合框控件列表显示框控件的代码。现在,我们在PythonGui.pyw再添加以下代码封装容器控件。接下来将会讲解使用方法,注意不要删除以前的代码。

def A_创建容器控件(放置属性,容器属性):
    '''
    函数说明:\n\n
    放置属性为一个列表,元素的意义分别为: 0.放置的窗口 1.放置于窗口的x绝对坐标(横坐标) 2.放置于窗口的y绝对坐标(纵坐标)\n\n
    容器属性为一个列表,元素的意义分别为:0.背景颜色 1.该容器是否带标题(False,True) 2.标题名称
    '''
    放置窗体 = 放置属性[0]
    放置位置 = 放置属性[1:]
    背景颜色 = 容器属性[0]
    是否带标题 = 容器属性[1]
    标题名称 = 容器属性[2]
    if 是否带标题:
        子窗口 = tk.LabelFrame(放置窗体,bg =背景颜色,height = 1 ,width = 1 ,text = 标题名称)
        子窗口.place(x = 放置位置[0],y = 放置位置[1])
        return 子窗口
    else:
        子窗口 = tk.Frame(放置窗体,bg =背景颜色,height = 1 ,width = 1 )
        子窗口.place(x = 放置位置[0],y = 放置位置[1])
        return 子窗口

调整记录:
(1)2021.03.25 将容器控件的放置方式更改为绝对位置,方便在主窗口上管理这些容器控件。


三、封装库的使用

在test.pyw中添加以下代码准备测试:

import PythonGui as GUI

主窗体 = GUI.A_建立根页面(['测试软件',350,190,'Beige'],'')

测试容器控件1 = GUI.A_创建容器控件([主窗体,10,10],['Beige',False,''])
测试容器控件2 = GUI.A_创建容器控件([主窗体,10,80],['Beige',True,'测试容器控件2'])
测试数据组合框1 = GUI.S_创建数据组合框控件([测试容器控件1,0,0],['测试数据组合框1',True,False,10,12,'Beige'],['int',123,False,''])
测试数据组合框2 = GUI.S_创建数据组合框控件([测试容器控件1,1,0],['测试数据组合框2',True,False,10,12,'Beige'],['int',123,False,''])
测试数据组合框11 = GUI.S_创建数据组合框控件([测试容器控件2,0,0],['测试数据组合框11',True,False,10,12,'Beige'],['int',123,False,''])
测试数据组合框12 = GUI.S_创建数据组合框控件([测试容器控件2,1,0],['测试数据组合框12',True,False,10,12,'Beige'],['int',123,False,''])

主窗体.mainloop()

V_1创建列表显示框控件()函数中有三个形参:0.放置属性 1.容器属性
(1)放置属性为一个列表,元素的意义分别为: 0.放置的窗口 1.放置于窗口的x绝对坐标(横坐标) 2.放置于窗口的y绝对坐标(纵坐标)
(2)容器属性为一个列表,元素的意义分别为:0.背景颜色 1.该容器是否带标题(False,True) 2.标题名称。

运行上述代码,可在主窗口上生成两个个容器框控件和四个数据组合框控件。其中一个容器控件放置在主窗体坐标的x=10,y=10的位置处,背景颜色为'Beige',没有标题;另外一个容器控件放置在主窗体坐标的x=10,y=80的位置处,背景颜色为'Beige',标题为'测试容器控件2'。而测试数据组合框1测试数据组合框2,放置于测试容器控件1这个容器控件测试数据组合框11测试数据组合框12,放置于测试容器控件2这个容器控件。使用容器控件的目的在于将创建的控件规整化,便于控件管理,在一定程度上避免了所有控件挤在一个主窗口上的麻烦。
请注意,放置属性中的坐标为主窗口的绝对位置坐标值,若你选择了100,200,那就是放置在主窗口的x=100,y=200的位置。

在这里插入图片描述


四、总结

若有建议之处,麻烦在评论区指出,共同进步,谢谢。ps:平常加班较多,我会抽空余时间更新后面章节。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

呆呆熊的世界

原创不复制精细无废料,谢谢赞赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值