繁体   English   中英

Tkinter文本调整大小

[英]Tkinter Text Resize

这是我第一次在这里提出问题,在这一点上,我尽了最大的努力来避免,但是我碰到了一堵墙,我觉得自己已经探索了所有用于Google搜索和阅读的途径。

我在python中使用tkinter库。 我的目标是让窗口实例化并每秒刷新一次新文本。 我的代码的问题在于文本(可能默认情况下是)很小。 我希望文本始终适合窗口。 另外,当用户调整窗口时,我希望文本大小增加或缩小(仍然适合)。 这是我当前的tkinter代码:

import tkinter as tk
try:
    import tkFont
except:
    from tkinter import font as tkFont


class display(tk.Tk):
    def __init__(self):    
        tk.Tk.__init__(self)
        self.font = tkFont.Font(size = 10)
        self.label = tk.Label(self, width=10, height=10)
        self.label.pack()
        self.update()


    def update(self):
        self.label.configure(font = self.font, text="I want some font right here")
        self.font = tkFont.Font(size = (-1 * round(self.winfo_height() - 100)))
        self.after(1000, self.update)


if __name__ == '__main__':
    root = display()
    root.mainloop()

我可能已经在做一些时髦的事情。 任何帮助是极大的赞赏。 我将回答任何人可能提出的任何后续问题。

为了使文本能够动态调整大小,不幸的是,您每次都必须重新绘制文本。

开头的文字较小,请增加尺寸。 现在,您将其设置为10,标签也很小。 增大此比例(毫不奇怪)会增大字体大小。

我知道这个问题指的是调整字体大小,但是我偶然发现它在寻找一种调整文本小部件大小的方法。 也许这对某人有用。 阅读完tcl文档后,我发现您可以像下面这样使用expand和fill填充几何管理器:

somewidget.pack(expand=YES, fill=BOTH) 

如果需要,将其应用于父母和孩子。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM