python - 如何加载和blit图像Python

标签 python tkinter pygame blit

我正在尝试使用

tkFileDialog.askopenfilename

加载图像然后将其blit到屏幕上,但它不起作用。 我创建了一个矩形按钮,这样当我单击它时,它会打开对话框来加载 一个图像。加载后我希望它 blit,但它不起作用。(错误)。 这是我的代码:

if loadrect.collidepoint(mx,my) and mb[0]==1:
            filename = tkFileDialog.askopenfilename(filetypes=Formats,title="Choose an image to open")
            if filename!= None:
                screen.blit(filename,(203,44))

我该如何纠正这个问题?

谢谢。

最佳答案

使用 pygame,您必须首先加载图像,仅传递其文件名是不够的(http://www.pygame.org/docs/ref/image.html#pygame.image.load):

if loadrect.collidepoint(mx,my) and mb[0]==1:
    filename = tkFileDialog.askopenfilename(filetypes=Formats,title="Choose an image to open")
    if filename!= None:
        surface = pygame.image.load(filename)
        screen.blit(surface,(203,44))

关于python - 如何加载和blit图像Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9056840/

相关文章:

python - "pygame.display.update()"没有清除blit图像

python - 如何在不影响其余部分的情况下延迟程序的一部分?

python:__getattr__ 的协作 super 调用

python - tkinter 和 Tkinter 之间的区别

python - Python 中的列表在使用替换方法时不维护值

python - 有没有一种方法可以检查是否在没有cap = cv2.videocapture的情况下连接了摄像机

Python tkinter root.wm_geometry 返回错误的大小

python - Pygame 中的分割图像

Python Asyncio 如何从队列中连续运行任务/协程

python - 倒计时,然后向上