如何更改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()

輸出

以下是放置在視窗左上角的圖示的輸出。

更新於:2023年8月9日

1K+ 次瀏覽

啟動你的職業生涯

透過完成課程獲得認證

開始
廣告