繁体   English   中英

画布上的图像小部件 Tkinter

[英]Image on canvas widget Tkinter

我已经几乎完成了我正在制作的游戏,但现在我想要让角色四处移动,在图形上看起来比只是块好一点。 但是,所有代码都是这样制作的,它仅适用于画布小部件(在本例中为矩形)而不适用于图像。 那么,有没有办法将图像粘贴到这样的画布小部件上或用图像填充画布小部件。 经过一些研究,我认为我可以用 PIL 做到这一点,但它对我不起作用。

在这种情况下使用任何提示或其他推荐的软件包? 或者我应该重写我所有的代码来处理图像对象(也就是我上面问的事情是不可能的)。

你试过这里的例子吗?

#!/usr/bin/python3
# -*- coding: utf-8 -*-

"""
ZetCode Tkinter tutorial

In this script, we draw an image
on the canvas.

Author: Jan Bodnar
Last modified: July 2017
Website: www.zetcode.com
"""

from tkinter import Tk, Canvas, Frame, BOTH, NW
from PIL import Image, ImageTk

class Example(Frame):

    def __init__(self):
        super().__init__()   

        self.initUI()


    def initUI(self):

        self.master.title("High Tatras")        
        self.pack(fill=BOTH, expand=1)

        self.img = Image.open("tatras.jpg")
        self.tatras = ImageTk.PhotoImage(self.img)

        canvas = Canvas(self, width=self.img.size[0]+20, 
           height=self.img.size[1]+20)
        canvas.create_image(10, 10, anchor=NW, image=self.tatras)
        canvas.pack(fill=BOTH, expand=1)


def main():

    root = Tk()
    ex = Example()
    root.mainloop()  


if __name__ == '__main__':
    main()   

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM