使用 tkinter 在 labelFrame 标题中插入图像
Insert an image in a labelFrame title with tkinter
我想知道是否可以在 tkinter 的 Labelframe 标题中插入图像或图标?
也许是这样的lf = Labelframe(root, image='my_img')
,就像我们可以用按钮做的一样。
这将是非常有用的。
您可以插入任何小部件作为 LabelFrame 的 labelwidget 选项。
如果您想要在 LabelFrame 中显示图像而不是文本:
import tkinter as tk
from PIL import Image, ImageTk
w = tk.Tk()
w.geometry("400x500")
img_open = Image.open("example_1.png")
img = ImageTk.PhotoImage(img_open)
label_title = tk.Label(w, image=img) #important Do Not grid/pack/place it!
label_frame = tk.LabelFrame(w, labelwidget=label_title)
label_frame.grid(row=0, column=0)
#fill LabelFrame with something to make it visible
bt = tk.Button(label_frame, text="Press")
bt.grid(padx=20, pady=20)
w.mainloop()
输出:
或者就像我在使用任何小部件之前所说的那样。
带有图像的示例标签和带有文本的标签。
import tkinter as tk
from PIL import Image, ImageTk
w = tk.Tk()
w.geometry("400x500")
img_open = Image.open("example_1.png")
img = ImageTk.PhotoImage(img_open)
frame_labelwidget = tk.Frame(w) #important Do Not grid/pack/place it!
label_image = tk.Label(frame_labelwidget, image=img)
label_image.grid(row=0, column=0)
label_text = tk.Label(frame_labelwidget, text="Teamwork")
label_text.grid(row=0, column=1)
label_frame = tk.LabelFrame(w, labelwidget=frame_labelwidget)
label_frame.grid(row=0, column=0)
#fill LabelFrame with something to make it visible
bt = tk.Button(label_frame, text="Press")
bt.grid(padx=20, pady=20)
w.mainloop()
输出:
当然这没什么意义,因为您可以使用复合选项在 tk.Label 中组合文本和图像。
我添加它只是为了演示目的,你可以添加任何你想要的小部件。您可以添加条目而不是 label_text,Canvas...
我想知道是否可以在 tkinter 的 Labelframe 标题中插入图像或图标?
也许是这样的lf = Labelframe(root, image='my_img')
,就像我们可以用按钮做的一样。
这将是非常有用的。
您可以插入任何小部件作为 LabelFrame 的 labelwidget 选项。
如果您想要在 LabelFrame 中显示图像而不是文本:
import tkinter as tk
from PIL import Image, ImageTk
w = tk.Tk()
w.geometry("400x500")
img_open = Image.open("example_1.png")
img = ImageTk.PhotoImage(img_open)
label_title = tk.Label(w, image=img) #important Do Not grid/pack/place it!
label_frame = tk.LabelFrame(w, labelwidget=label_title)
label_frame.grid(row=0, column=0)
#fill LabelFrame with something to make it visible
bt = tk.Button(label_frame, text="Press")
bt.grid(padx=20, pady=20)
w.mainloop()
输出:
或者就像我在使用任何小部件之前所说的那样。
带有图像的示例标签和带有文本的标签。
import tkinter as tk
from PIL import Image, ImageTk
w = tk.Tk()
w.geometry("400x500")
img_open = Image.open("example_1.png")
img = ImageTk.PhotoImage(img_open)
frame_labelwidget = tk.Frame(w) #important Do Not grid/pack/place it!
label_image = tk.Label(frame_labelwidget, image=img)
label_image.grid(row=0, column=0)
label_text = tk.Label(frame_labelwidget, text="Teamwork")
label_text.grid(row=0, column=1)
label_frame = tk.LabelFrame(w, labelwidget=frame_labelwidget)
label_frame.grid(row=0, column=0)
#fill LabelFrame with something to make it visible
bt = tk.Button(label_frame, text="Press")
bt.grid(padx=20, pady=20)
w.mainloop()
输出:
当然这没什么意义,因为您可以使用复合选项在 tk.Label 中组合文本和图像。
我添加它只是为了演示目的,你可以添加任何你想要的小部件。您可以添加条目而不是 label_text,Canvas...