python-3.x - Tkinter 帧没有通过类似的打包参数同等扩展
问题描述
我正在尝试使用 tkinter 构建一个 UI,它使用 2 个框架将窗口分成 2 个部分,但是我无法让它们的宽度相等。
我最初的方法是让 1 个边 = LEFT 的框架和 1 个边 = RIGHT 的框架,两个框架都有 fill = BOTH 和 expand = YES。当框架为空时,此方法工作得很好,但是当向它们添加小部件时,左框架变得比右框架宽。
使用的代码(没有菜单栏):
from tkinter import *
master = Tk()
master.geometry("500x500")
lframe = Frame(bg = 'red', relief = "raised", bd = 2)
rframe = Frame(bg = 'blue',relief = "raised", bd = 2)
# Set up for left frame
password_options = Listbox(lframe)
password_options.pack(side = "left", fill = 'both', expand = 1)
password_scrollbar = Scrollbar(lframe)
password_scrollbar.pack(side = 'left', anchor = 'w', fill = 'y', expand = 1)
# Set up for right frame
b = Button(rframe, text = "TEST")
b.pack(expand = 1, fill = 'both')
lframe.pack(side = "left", fill = "both", expand = 1)
rframe.pack(side = "right", fill = "both", expand = 1)
master.mainloop()
我认为添加小部件后框架的宽度仍然相等,但似乎并非如此。什么可能导致这种行为?
解决方案
推荐阅读
- html - 如何在中心对齐 3 个框
- c# - TextBox c# 应用程序的输入字符串格式不正确
- python - 常量折叠的具体规则是什么?
- azure-cosmosdb - 这是在 cosmos db 中检测“分区已满”异常的正确方法吗?(403.1014)
- django - django cache_page 如何过期?
- ruby-on-rails - 定位新的 postgres 数据库 (rails)
- python-3.x - 试图从父类继承变量“NameError: name 'r' is not defined”
- excel - 如何按索引位置返回数组中的元素值?
- arrays - 将 1,2 字符串转换为数组 [1, 2]
- ios - 使用 iOS 设置 TCP_QUICKACK