如何在另一个小部件的位置上放置小部件?

时间:2019-06-28 13:25:10

标签: python tkinter

我想动态放置小部件。如果我更改一个小部件的位置,则所有其他小部件也应同时移动。

我尝试过类似的操作,但是“测试”未正确显示。它在我的输入小部件的左侧,但我希望将它+ 20px添加到TypEntry中。

my_script.lua

1 个答案:

答案 0 :(得分:2)

您到底要问什么还不清楚,因为tkinter提供了几种相对于其他小部件放置小部件的方法。

但是,如果您实际上没有约束,只是将一个小部件相对于另一个放置,则最简单的解决方案是place。根据我的经验,除非在极少数情况下,place几乎永远不是正确的解决方案,因为您必须自己做很多工作。

如果您阅读place的文档,则会看到有专门用于相对位置的选项。这些选项包括relxrelyrelwidthrelheight

使用您的代码,如下所示:

ArtikelLabel.place(in_=TypEntry, relx=1.0, x=20, rely=0)

在此示例中,这些选项具有以下作用:

  • in _ 指定该小部件相对于的小部件

  • relx 是一个浮点值,其中0表示另一个小部件的左边缘,而1.0表示右边缘。通过使用1.0,我们说的是希望标签相对于输入小部件的最右边缘定位。

  • x 是绝对数字。与relx结合使用时,将对这些值求和。因此relx=1.0, x=20表示右边缘右侧20个像素

  • 确实指定小部件要与小部件的顶部边缘对齐。