有没有办法在Tkinter GUI中有条件地更改文本的大小?

时间:2019-03-22 18:43:48

标签: python tkinter

因此,我正在创建一个显示输入歌曲的歌​​词的应用程序,但是,较长的歌曲不适合,因此如果文本较长,我想缩小文本的大小。我不确定该如何处理,因此将不胜感激。

我尝试使用有条件的,但是,它似乎没有用。

file = open(artist + song + ".txt", "r")
lyrics = file.read()
lines = file.readlines()
lyricsLabel = tk.Label(root, text = lyrics)

lyricsLabel.config(font = ("TkDefaultFont", 5))

lyricsLabel.grid(column = 0, row = 0)

if playSong == True:
    os.startfile(artist + song + ".mp3")

1 个答案:

答案 0 :(得分:0)

您可以使用len()来测量文本文件的长度,然后使用elif语句修改字体大小。例如

text = len(song)

if text < 20:
   font_size = 20
elif text > 20 and < 40:
   font_size = 15

等...

然后

song = Lable(root, text= song)
song.config(font = ("TkDefaultFont", font_size))