Tkinter:放置一个或多个标签,每个标签都有不同的字体

时间:2017-03-11 18:18:18

标签: python tkinter

我是python和tkinter的新手。 我需要在此代码中放置一个或多个标签,每个标签都有不同的字体。 代码在我的MAC中运行。 我试图插入更多标签,但结果不会出现在屏幕上,只是第一个标签中的一个。 任何帮助,将不胜感激。感谢。

from Tkinter import *
import ttk
from PIL import Image, ImageTk

root = Tk()
root.title("Title")
root.geometry('800x600')

MyText="""Line 1
Line 2"""

def resize_image(event):
    new_width = event.width
    new_height = event.height
    image = copy_of_image.resize((new_width, new_height))
    photo = ImageTk.PhotoImage(image)
    label.config(image = photo)
    label.image = photo #avoid garbage collection

image = Image.open('pptfileteado.gif')
copy_of_image = image.copy()
photo = ImageTk.PhotoImage(image)
#label = ttk.Label(root, image = photo)
label = ttk.Label(root, 
                  compound=CENTER, 
                  text=MyText, 
                  foreground='white', 
                  justify='center',
                  font = "Ayres 70", 
                  image = photo)

label.bind('<Configure>', resize_image)
label.pack(fill=BOTH, expand = YES, side="right")

root.mainloop()

1 个答案:

答案 0 :(得分:0)

您还没有指定要放置标签的位置。为此,您可以使用.grid().pack().place().grid()允许您使用rowcolumn放置特定位置,.pack()会将标签放在窗口中的下一个可用位置。例如:

label = ttk.Label(root, text="Example")
label.pack()

这会将label打包到代码中的下一个可用空间。

希望我能提供帮助:)