【问题标题】:Tkinter Label center text set text to start from top leftTkinter 标签中心文本设置文本从左上角开始
【发布时间】:2020-08-26 03:17:57
【问题描述】:

我正在使用 Tkinter 为我的应用程序创建 GUI,当我创建标签时,文本始终位于标签的中心,有没有办法将文本设置为从左上角开始?

big_text_area = Label(self.master, text='Hello, World!', width=70, height=25, bg='white', foreground='black')
big_text_area.place(x=380, y=30)

示例:

【问题讨论】:

标签: python tkinter


【解决方案1】:

我相信标签的位置是由 .place() 函数决定的。所以如果你想让标签在左上角,你应该这样做

big_text_area.place(x = 0, y = 0)

Tutorialspointeffbot 有一个 .place() 函数及其参数的文档。大多数都有默认值,因此请记住这一点。

我要指出的另一件事是 widthheight 参数不会改变文本的大小。相反,它们会更改文本周围的矩形框。这可能是即使您将其位置设置为左上角,您的文本仍位于中间的原因。 effbot 再次拥有 Label 小部件的详细信息。

只是一个简单的工作示例:(Python 3.7)

from tkinter import *

master = Tk()

master.geometry("200x200") 

# to change text size, use font=("font name", size)
w = Label(master, text="Hello, world!", font=("Helvetica", 22))

# explicitly set the text to be at the top left corner
w.place(anchor = NW, x = 0, y = 0)

mainloop()

字体问题也在this post得到解答

【讨论】:

  • 我有主窗口,我有 big_text_area Label,我想将它放在我在 place 函数中指定的位置,它仍然无法正常工作。跨度>
  • 看起来你想通了。如有需要,请随时跟进。
猜你喜欢
  • 1970-01-01
  • 2016-07-01
  • 2017-11-04
  • 1970-01-01
  • 2017-02-05
  • 2012-12-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多