【问题标题】:how can you display an image on a gui using tk in python2.7如何在 python2.7 中使用 tk 在 gui 上显示图像
【发布时间】:2013-05-09 15:35:48
【问题描述】:

如果可能,当我以 gui 形式运行 python 代码时,我需要能够显示图像。如果您知道答案,我是否还必须在代码中输入文件夹名称和文件名?

如有必要,请提供 tk 的代码

from Tkinter import *

root = Tk()

toolbar = Frame(root)

# All the buttons in my program
b = Button(toolbar, text="Home", width=9)
b.pack(side=LEFT, padx=2, pady=2)

b = Button(toolbar, text="About-us", width=9)
b.pack(side=LEFT, padx=2, pady=2)

b = Button(toolbar, text="Contact-us", width=9)
b.pack(side=LEFT, padx=2, pady=2)

b = Button(toolbar, text="Travelling", width=9)
b.pack(side=LEFT, padx=2, pady=2)


toolbar.pack(side=TOP, fill=X)

# All the labels in my program
o = Label(root,text="Frank Anne",font =("Italic",18,"bold"))
o.pack()

toolbar1 = Frame(root)

o=Label(root,)
o.pack()


o=Label(root,text ="Age:                     27")
o.pack()

o=Label(root,text ="Address:                 71 strawberry lane, JU8 8TY")
o.pack()

toolbar1.pack(side=BOTTOM, fill=X)









mainloop()

【问题讨论】:

    标签: python image python-2.7 tkinter tk


    【解决方案1】:

    您好,如果您希望在 tk Canvas 中显示图像,则它需要是 PPM/PGM 或 GIF: discussion from python.org

    但是,如果您希望加载 PPM、PGM 或 GIF:

    import Tkinter as tk
    root = tk.Tk()
    root.title("display a website image")
    photo = tk.PhotoImage(file= r"C:\Some\Local\location\smile.gif")
    cv = tk.Canvas()
    cv.pack(side='top', fill='both', expand='yes')
    cv.create_image(10, 10, image=photo, anchor='nw')
    root.mainloop()
    

    这会创建一个框架,使用 tk.PhotoImage 加载图像,然后制作一个画布并将图像放到画布上。

    【讨论】:

      【解决方案2】:

      如果我理解,您只是想使用 Tkinter 显示图像?

      为此,您可以使用一个用您的图像填充的 Canvas 小部件。

      这是一个例子:

      can = Canvas(window, width=160, height=160, bg='white')
      pic = PhotoImage(file='picture.jpg')
      item = can.create_image(80, 80, image=pic)
      

      【讨论】:

      • 您不需要使用画布;您还可以使用标签小部件。
      • 我认为这是“最干净”的制作方法。
      • 我的意思是,说某人需要以某种方式做某事意味着这是唯一的方式,但在这种情况下它不是唯一的方式。
      猜你喜欢
      • 2017-11-14
      • 1970-01-01
      • 2013-07-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-28
      • 1970-01-01
      相关资源
      最近更新 更多