1. 程式人生 > >【Pygame】常用操作總結

【Pygame】常用操作總結

import pygame

# 初始化pygame庫
pygame.init()

———–視窗相關操作———–

# 建立視窗
window = pygame.display.set_mode([視窗寬, 視窗高])

# 設定視窗標題
pygame.display.set_caption("視窗標題")

# 載入資源圖片,返回圖片物件
image = pygame.image.load("res/game.ico")

# 設定視窗圖示
pygame.display.set_icon(image)

# 指定座標,將圖片繪製到視窗
window.blit(image, (0, 0))

———–影象相關操作———–

# ----------影象相關操作-----------
# 載入圖片檔案,返回圖片物件
image = pygame.image.load("圖片路徑")


# 獲得圖片矩形物件 -> Rect(x, y, width, height)
# 預設情況下左上角的座標是 (0, 0)
rect = image.get_rect(centerx=x, centery=y)

# 在原位置基礎上,移動指定的偏移量 (x, y 增加)
rect.move_ip(num1, num2)

# 判斷兩個矩形是否相交,相交返回True,否則返回False
flag = pygame.Rect.colliderect
(rect1, rect2) # 將圖片物件按指定寬高縮放,返回新的圖片物件 trans_image = pygame.transform.scale(image, (WINDOWWIDTH, WINDOWHEIGHT))

———–事件相關操作———–

# 常見事件型別:
# QUIT 關閉視窗
# KEYDOWN 鍵盤按鍵
# 獲得當前所有持續按鍵 bools_tuple

# 獲得所有事件的列表
event_list = pygame.event.get()

for event in event_list:
    # 1. 滑鼠點選關閉視窗事件
    if event.type == pygame.QUIT:
        print("關閉了視窗"
) sys.exit() # 2. 鍵盤按下事件 if event.type == pygame.KEYDOWN: # 判斷使用者按下的鍵是否是a鍵 if event.key == pygame.K_a: print("按了 a ") if event.key == pygame.K_UP: print("按了 方向鍵上") # 3. 獲得當前鍵盤所有按鍵的狀態(按下,沒有按下),返回bool元組 pressed_keys = pygame.key.get_pressed() if pressed_keys[pygame.K_w] or pressed_keys[pygame.K_UP]: print("按了 w 鍵,或者 方向鍵上")

———–音效相關操作———–

# 載入背景音樂
pygame.mixer.music.load("./res/音樂檔名")
# 迴圈播放背景音樂
pygame.mixer.music.play(-1)
# 停止背景音樂
pygame.mixer.music.stop()

# 載入音效
boom_sound = pygame.mixer.Sound("./res/音效名")
# 播放音效
boom_sound.play()
# 停止音效
boom_sound.stop()

三基色:Red Green Blue

0 ~ 255

——– 文字顯示操作

# 設定字型樣式和大小
font = pygame.font.SysFont('SimHei', 字型大小)
# render(text(文字內容), antialias(抗鋸齒), color(RGB)),返回文字物件
textobj = font.render(text, 1, (200, 200, 200))

# 設定文字矩形物件位置
textrect = textobj.get_rect()
textrect.move_ip(水平偏移量, 豎直偏移量)
# 在指定位置繪製指定文字物件
window.blit(textobj, textrect)
# 更新介面
pygame.display.update()