gpt4 book ai didi

python - Tkinter 包布局 : Elastic band analogy

转载 作者:行者123 更新时间:2023-12-01 01:41:42 24 4
gpt4 key购买 nike

对我来说,使用 pack 就像将所有小部件放在松紧带内一样,这意味着 pack 会尝试将您的小部件保留在一个小而整齐的区域中。

这个类比与事实有多接近,有哪些不一致之处?

最佳答案

这个类比一点也不准确。 pack 并不试图将东西保持在“小而整齐的区域”,而且它实际上与松紧带完全没有关系。

pack 在概念上非常简单:它将小部件排列在父小部件中未分配空间的边缘周围。最简单的思考方法是,你从外面装满一个盒子,然后向中间努力。使用pack,您会不断填充空腔,这就是为什么它被称为腔模型

当您将一个小部件放置在父小部件的空腔内时,您是将其沿着空腔的一侧放置。然后,该小部件占据该空腔的整个侧面。例如,如果您使用选项 side="left" 打包某些内容,则该小部件将占据空腔的整个左侧,然后减小下一个小部件的空腔大小。如果父窗口部件的宽度为 1000 像素,子窗口部件的宽度为 100 像素,那么您将把下一个子窗口部件的空腔宽度缩小到 900 像素。

关于 pack 工作原理的绝对最好、最完整的描述可以在本书 Practical Programming in Tcl and Tk, by Brent Welch, Ken Jones, and Jeffrey Hobbs 中找到。 。加壳算法的简洁但完整的描述可以在 tcl/tk pack man page 中找到。 。它是从 tcl/tk 程序(相对于 python/tkinter)的角度编写的,但无论您使用哪种语言,基本方面都是相同的。

关于python - Tkinter 包布局 : Elastic band analogy,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51818550/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com