【问题标题】:Changing Font Size in a button in tkinter when using a text variable使用文本变量时更改 tkinter 按钮中的字体大小
【发布时间】:2019-02-26 21:06:37
【问题描述】:

我目前正在使用 tkinter 完成一个简单的井字游戏,按下时会变为 X 或 O 的框(按钮)。为此,我使用了一个函数,用于按下按钮时使用文本变量更改按钮中的文本,如下所示:

T1text=Tk.StringVar()
T1=Tk.Button(nac, textvariable=T1text, width="25", height="12" , bg="red", command=updateT1)
T1.grid(row=1, column=0)
T1text.set("")

此部分是正在创建的按钮并创建变量“T1text”(顶部 1),该变量将用于将按钮中的文本更改为 O 或 X,如您所见,我首先将 T1text 设置为“” ,这里是变化函数:

if T1taken==1:
    print("space taken")
elif player=="X":
    T1text.set("X")
    player="O"
    playerText.set(player)
elif player=="O":
    T1text.set("O")
    player="X"
    playerText.set(player)

这会将 T1text 中的文本更改为 X 或 O。

我需要能够将字母 X 或 O 设置为更大的尺寸,因为它太小而无法在更大的框中看到。

这是我迄今为止尝试过的:

T1text=Tk.StringVar()
T1=Tk.Button(nac, textvariable=T1text, font=("Helvetica", 70), width="25", height="12" , bg="red", command=updateT1)
T1.grid(row=1, column=0)
T1text.set("")

这会造成逻辑错误并使盒子变得很大,以至于我什至可以看到其他盒子并且它们不在屏幕上。

我不知道我还能尝试什么,任何帮助将不胜感激。

非常感谢!

【问题讨论】:

  • 那是因为70肯定很大吧?尝试一些较小的东西并进行试验,直到获得合适的尺寸。

标签: python tkinter


【解决方案1】:

注意事项:

  • 使用自定义大小的字体时无需使用宽度和高度选项,因为宽度和高度会随字体而变化
  • 不要将默认值设置为空字符串,而是将其设置为包含两个空格的字符串
  • 字体过大。减少它。

我建议将大小从 70 改为 30。
代码中的要点不是使用宽度和高度选项。
使用T1text.set(" ") 而不是T1text.set("") 这样在更改文本时不会有太大的大小差异。

这是一个示例代码:

import tkinter as Tk
root = Tk.Tk()

T1text = Tk.StringVar()
T1 = Tk.Button(root, textvariable = T1text,font = ("Helvetica", 30) ,bg="red")
T1.grid(row = 1, column = 0)
T1text.set("  ")

root.mainloop()

这是另一个改变点击文本的示例代码:

import tkinter as Tk
root = Tk.Tk()
def upd():
    print(str(T1text.get()))
    T1text.set("O" if str(T1text.get()) == "X" or str(T1text.get()) == "  " else "X")
T1text = Tk.StringVar()
T1 = Tk.Button(root, textvariable = T1text,font = ("Helvetica", 30) ,bg="red",command=upd)
T1.grid(row = 1, column = 0)
T1text.set("  ")

root.mainloop()

您可以根据需要更改字体大小!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-09-27
    • 2017-08-07
    • 2015-05-07
    • 2019-05-02
    • 1970-01-01
    • 2021-01-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多