2024-04-30 06:33:07 发布
网友
我试着在框架中放入16个复选按钮,将它们分为四列,如:
c1 = Tkinter.Checkbutton(group.interior(), text = 'Name', indicatoron= 1, variable = self.Checkvar_nr, command=cb) c1.(row = 0, column = 0)
以此类推:
一切都很好,除了列垂直对齐,因为使用的文本长度不同。 如何水平对齐?在
作为一种选择,尝试将每个元素放置在不可拉伸的图形元素中。在
我们的想法是布局管理器最大限度地利用屏幕不动产。因为你想占用更多的空间,这与布局管理器的算法相反,你需要找到一个不“改变大小”的图形容器。在
有时,您可以通过手动编辑文本字符串来实现这一点(不太推荐)。其他时候可以使用类似table的结构(例如HTML)。其他时候,可以使用具有定义的宽度和高度属性的帧。然后将这些框架作为元素放置在柱的内部。在
table
注:我很久没玩Tk了。我要凭记忆走。祝你好运!在
(编辑:)从内存开始,列将根据内容调整其宽度。如果第一列中有几个三个字符的标签,第二列有五个字符的标签,那么这两列的宽度将不同。(注意:这将取决于布局管理器。)如果有问题的布局管理器有一个“固定宽度”选项,那么它应该保持所有列宽相同。在
使用基于内容(HTML、CSS等)的维度重新排列的布局管理器,有时需要将内容放在“不可移动”的容器中。通常这些都是框架。框架用作边界框。当需要具有宽度和高度的元素没有该特性时,此方法有效。在
我不太理解这个问题,因为列必须垂直对齐,因为它是一个网格。我想你的意思是每列中的项没有与列边界对齐。将每个checkbutton添加到网格时,请尝试使用sticky='w'。这将导致它们“粘”在列的左边缘。在
sticky='w'
作为一种选择,尝试将每个元素放置在不可拉伸的图形元素中。在
我们的想法是布局管理器最大限度地利用屏幕不动产。因为你想占用更多的空间,这与布局管理器的算法相反,你需要找到一个不“改变大小”的图形容器。在
有时,您可以通过手动编辑文本字符串来实现这一点(不太推荐)。其他时候可以使用类似
table
的结构(例如HTML)。其他时候,可以使用具有定义的宽度和高度属性的帧。然后将这些框架作为元素放置在柱的内部。在注:我很久没玩Tk了。我要凭记忆走。祝你好运!在
(编辑:)从内存开始,列将根据内容调整其宽度。如果第一列中有几个三个字符的标签,第二列有五个字符的标签,那么这两列的宽度将不同。(注意:这将取决于布局管理器。)如果有问题的布局管理器有一个“固定宽度”选项,那么它应该保持所有列宽相同。在
使用基于内容(HTML、CSS等)的维度重新排列的布局管理器,有时需要将内容放在“不可移动”的容器中。通常这些都是框架。框架用作边界框。当需要具有宽度和高度的元素没有该特性时,此方法有效。在
我不太理解这个问题,因为列必须垂直对齐,因为它是一个网格。我想你的意思是每列中的项没有与列边界对齐。将每个checkbutton添加到网格时,请尝试使用
sticky='w'
。这将导致它们“粘”在列的左边缘。在相关问题 更多 >
编程相关推荐