你如何在python中定位文本框?

时间:2017-09-28 01:10:54

标签: python python-3.x tkinter

你能帮我定位名为" stuff"的文本框吗? (如果你有任何好的教程,你也可以发布这些吗?)。

import tkinter
from tkinter import font
from datetime import datetime

now = datetime.now()
month = now.month
day = now.day
year = now.year

stuff = "the month is %s the day is %d and they year is %s" % (month, day, 
year)

topwindow = tkinter.Tk()
textbox = tkinter.Text(topwindow)
textbox.configure(font=("Times New Roman", 50, "bold"))
textbox.insert( tkinter.INSERT, str(stuff))
textbox.pack()
topwindow.mainloop()

2 个答案:

答案 0 :(得分:0)

有三种方法可以在tkinter中定位小部件。 Tkinter有三个几何管理器packplacegrid用于放置。

pack以盒子的概念运作。你"打包"物品到空盒子的一侧。当您需要在单行或单列中放置单个窗口小部件或一组窗口小部件时,最好。

grid顾名思义,它在网格中组织小部件。每个小部件都有一行和一列,还有其他选项可用于跨行和列,填充等。

place是使用最少的几何管理器。它的主要优点是它可以让你做绝对定位。它还允许相对定位(例如:您可以将一个小部件放在另一个小部件的正中间)。使用place缩小尺寸是因为你必须自己做很多数学运算,当字体或分辨率发生变化或用户改变大小时,让小工具正常运行起来要困难得多。窗口。

gridpack优于place的优势在于它们会自动增大或缩小窗口以适应其内容。这意味着您不必担心GUI的大小,它将成为它需要的大小。如果您希望自己的用户界面具有响应能力,则packgrid是最佳选择 - 在使用不同分辨率或字体的不同系统上运行时,以及用户调整窗口大小时,可以做出正确的反应。

tkinter book at effbot.org是一个有一些很好的基本文档的地方:

值得注意的是,您可以在同一个应用程序中使用所有三个 - 它们都有优点和缺点。唯一需要注意的是,您不能在共享相同父级(或母版,取决于您喜欢的术语)的不同小部件上同时使用gridpack

答案 1 :(得分:-1)

只需使用     textbox.pack()如果您希望将其放在左侧使用textbox.pack(side=LEFT)中,或者如果位于正确使用位置textbox.pack(side=RIGHT)

,它将被放置在中心位置