如何更改Pygame圖示?
在開發影片遊戲時,我們經常嘗試為開發的遊戲設定影像或徽標。Python在pygame中提供了一個名為set_icon()的函式,可以根據需要設定圖示。
Pygame是一組模組,允許我們開發遊戲和多媒體應用程式。它構建在SDL(簡單直接媒體層)庫之上,該庫可以透過OpenGL和Direct3D低訪問音訊鍵盤、滑鼠、操縱桿和圖形硬體。
語法
以下是為遊戲設定圖示的語法:
pygame_icon = pygame.image_load(“image_name”) pygame.display.set_icon(pygame_icon)
其中:
pygame_icon是變數的名稱。
pygame是庫。
image_load是載入影像的函式。
image_name是我們上傳的影像。
display.set_icon是設定所需圖示的函式。
為了為開發的遊戲設定圖示,我們必須按照以下步驟操作。
首先,我們必須安裝pygame庫
pip install pygame
安裝成功後,我們將得到以下輸出:
Collecting pygame Downloading pygame-2.3.0-cp39-cp39-win_amd64.whl (10.6 MB) ---------------------------------------- 10.6/10.6 MB 4.5 MB/s eta 0:00:00 Installing collected packages: pygame Successfully installed pygame-2.3.0 Note: you may need to restart the kernel to use updated packages.
現在,我們必須初始化pygame的圖形使用者介面 (GUI)。
pygame.init()
上述程式碼段的輸出如下。
(5, 0)
接下來,我們必須透過指定寬度和高度來設定構建的GUI遊戲的尺寸
size = pygame.display.set_mode([5,5]) print(size)
以下是設定GUI遊戲尺寸的輸出。
<Surface(5x5x32 SW)>
現在將我們想設定為圖示的影像傳遞給image.load()函式。
img = pygame.image.load('image.png') print(img)
以下是根據我們的要求上傳影像的輸出。
<Surface(5x5x32 SW)>
接下來,我們必須將上傳的影像傳遞給display.set_icon()函式,然後在遊戲執行時,影像將設定在左上角。
pygame.display.set_icon(img)
現在,我們必須將遊戲的執行狀態設定為True。
running = True
現在,我們已經設定了在遊戲執行時想要執行的操作。
while running: for event in pygame.event.get(): if event.type == pygame.QUIT: running = False
接下來,我們必須透過將RGB顏色傳遞給fill()函式來填充背景。
size.fill((150,150,0)
現在,我們必須更新我們所做的所有更改。
pygame.display.update()
最後,我們必須退出GUI遊戲
pygame.quit()
完整示例
現在讓我們一次性檢視整個程式碼。
import pygame pygame.init() size = pygame.display.set_mode([200,200]) img = pygame.image.load('image.png') pygame.display.set_icon(img) running = True while running: for event in pygame.event.get(): if event.type == pygame.QUIT: running = False size.fill((200,200,0)) pygame.draw.circle(size, (0, 0, 0), (100, 100), 100) pygame.display.update() pygame.quit()
輸出
以下是我們在視窗左上角設定的圖示的輸出。在輸出中,我們可以觀察到左側頂部的圖示。

示例
讓我們再看一個在GUI控制檯中設定圖示的示例。
import pygame pygame.init() size = pygame.display.set_mode([400,200]) img = pygame.image.load('download.jpg') pygame.display.set_icon(img) running = True while running: for event in pygame.event.get(): if event.type == pygame.QUIT: running = False size.fill((200,200,0)) pygame.draw.circle(size, (0, 0, 0), (100, 120), 50) pygame.display.update() pygame.quit()
輸出
以下是放置在視窗左上角的圖示的輸出。

廣告