gpt4 book ai didi

python - 我无法在我的 tkinter 图像上显示文本

转载 作者:太空狗 更新时间:2023-10-29 21:32:08 25 4
gpt4 key购买 nike

我想在我的图片上显示文字,但我做不到,有人能帮忙吗。

代码:

# import Image and the graphics package Tkinter
import Tkinter
import Image, ImageTk

class simpleapp_tk(Tkinter.Tk):
def __init__(self,parent):
Tkinter.Tk.__init__(self,parent)
self.parent = parent
self.initialize()

def initialize(self):
## def create_widgets(self):
# create welcome label
label1 = Tkinter.Label(self, text = "Update User")
label1.grid(row = 0, column = 1, columnspan = 2, sticky = 'W')

# open a SPIDER image and convert to byte format
im = Image.open('C:\Users\JOHN\Desktop\key.jpg')

root = Tkinter.Tk() # A root window for displaying objects

# Convert the Image object into a TkPhoto object
tkimage = ImageTk.PhotoImage(im)

Tkinter.Label(root, image=tkimage).pack() # Put it in the display window

root.mainloop() # Start the GUI

最佳答案

Label 构造函数采用参数compound。将图像和文本都传递给构造函数,并将 compound 作为 Tkinter.CENTER 传递以将文本重叠到图像上。此功能的文档位于 http://effbot.org/tkinterbook/label.htm

import Tkinter
import Image, ImageTk

# open a SPIDER image and convert to byte format
im = Image.open(r'C:\Users\JOHN\Desktop\key.jpg')

root = Tkinter.Tk() # A root window for displaying objects

# Convert the Image object into a TkPhoto object
tkimage = ImageTk.PhotoImage(im)

Tkinter.Label(root, image=tkimage, text="Update User", compound=Tkinter.CENTER).pack() # Put it in the display window

root.mainloop() # Start the GUI

另请注意,您不应该混合使用 pack 和 grid。你应该选择其中之一。引用:http://effbot.org/tkinterbook/grid.htm

附言以防万一你想让文本垂直高于图像,你可以使用与上面相同的代码,除了设置 compound=Tkinter.BOTTOM

关于python - 我无法在我的 tkinter 图像上显示文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15774459/

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