gpt4 book ai didi

python - 如何增加文本小部件中的字体大小?

转载 作者:行者123 更新时间:2023-11-28 22:23:15 26 4
gpt4 key购买 nike

当我使用以下代码增加字体大小时,它也会增加小部件的大小。是否可以通过保持文本小部件的大小不变来增加字体大小?谢谢你

  A11 = tkinter.Text(top, height=28, width=70,background = "#02e0a1")
labelfont = ('times', 20, 'bold')
A11.config(font = labelfont)

最佳答案

如果强制 GUI 窗口为特定大小,则更改文本小部件的字体不会导致文本小部件变大*。将文本小部件的宽度和高度设置为 1(一)通常会有所帮助,这样它甚至不会在您更改字体时尝试增大。

  • 好吧,小部件将尝试增大,但窗口的大小限制将防止小部件变得太大。

这是一个简单的人为示例。

import tkinter as tk
import tkinter.font as tkFont

class Example(object):
def __init__(self):
root = tk.Tk()
self.font = tkFont.Font(family="helvetica", size=18)
text = tk.Text(root, width=1, height=1, font=self.font)
button = tk.Button(root, text="Bigger", command=self.bigger)

button.pack(side="top")
text.pack(side="top", fill="both", expand=True)

text.insert("end", "Hello, world!")

# force the widow to a specific size after it's created
# so that it won't change size when we change the font
root.geometry("800x400")

def start(self):
tk.mainloop()

def bigger(self):
size = int(self.font.cget("size"))
size += 2
self.font.configure(size=size)


app = Example()
app.start()

相同的技术可以通过将大小约束放在框架而不是根窗口上来在较小的规模上工作。如果将文本小部件放在框架内,关闭几何传播,然后为框架指定固定大小,则小部件将不会增长。这是关闭几何传播可能有用的少数情况之一。

下面是对上述示例的修改,使用了这种技术:

import tkinter as tk
import tkinter.font as tkFont

class Example(object):
def __init__(self):
root = tk.Tk()
self.font = tkFont.Font(family="helvetica", size=18)
button = tk.Button(root, text="Bigger", command=self.bigger)

# create a frame for the text widget, and let it control the
# size by turning geometry propagation off
text_frame = tk.Frame(root, width=800, height=400)
text_frame.pack_propagate(False)
text = tk.Text(text_frame, width=1, height=1, font=self.font)
text.pack(side="top", fill="both", expand=True)

button.pack(side="top")
text_frame.pack(side="top", fill="both", expand=True)

text.insert("end", "Hello, world!")

def start(self):
tk.mainloop()

def bigger(self):
size = int(self.font.cget("size"))
size += 2
self.font.configure(size=size)


app = Example()
app.start()

关于python - 如何增加文本小部件中的字体大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47127233/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com