【Pygame】常用操作總結
阿新 • • 發佈:2019-01-04
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()