我想用代码改变pygame窗口图标:
import pygame
pygame.init()
screen = pygame.display.set_mode((800, 600))
pygame.display.set_caption("Snake Game")
icon = pygame.image.load('snake icon.png')
pygame.display.set_icon(icon)
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
当我使用那个代码时它不会工作,就像窗户自己关上了,但是当我把代码改成:
import pygame
pygame.init()
screen = pygame.display.set_mode((800, 600))
pygame.display.set_caption("Snake Game")
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
它的工作,但它仍然有默认的pygame图标,我想改变pygame图标,谁能告诉我代码出了什么问题?
确保资源(图像)路径和工作目录正确。
映像文件路径必须相对于当前工作目录。工作目录可能与python文件的目录不同。
文件的名称和路径可以通过__file__
获取。os.getcwd()
可获取当前工作目录,os.chdir(path)
可更改当前工作目录
import os
sourceFileDir = os.path.dirname(os.path.abspath(__file__))
os.chdir(sourceFileDir)
进一步参见pygame.display.set_icon()
:
[…有些系统不允许窗口图标在显示后更改。此函数可在
pygame.display.set_mode()
之前调用,以便在设置显示模式之前创建图标。
设置screen = pygame.display.set_mode((800, 600))
前的图标:
icon = pygame.image.load('snake icon.png')
pygame.display.set_icon(icon)
screen = pygame.display.set_mode((800, 600))