pygame模塊完整的方法和事件

安裝

首先咱們須要安裝pygame,若是已經安裝好python和pip的,只須要在命令行工具中執行:python

pip install pygame

111.png

  • 安裝好後咱們可使用import pygame來確認pygame有咩有裝成功。以下圖所示,這樣咱們就能夠知道pygame是安裝成功的啦,且它的版本是1.9.6。

Pygame經常使用模塊

模塊名 功能
pygame.cdrom 訪問光驅
pygame.display 訪問顯示設備
pygame.draw 繪製形狀、線和點
pygame.cursors 加載光標
pygame.event 管理事件
pygame.font 使用字體
pygame.image 加載和存儲圖片
pygame.joystick 使用遊戲手柄或者相似的東西
pygame.key 讀取鍵盤按鍵
pygame.mixer 聲音
pygame.mouse 鼠標
pygame.movie 播放視頻
pygame.music 播放音頻
pygame.overlay 訪問高級視頻疊加
pygame.rect 管理矩形區域
pygame.scrap 本地剪貼板訪問
pygame.sndarray 操做聲音數據
pygame.sprite 操做移動圖像
pygame.surface 管理圖像和屏幕
pygame.surfarray 管理點陣圖像數據
pygame.time 管理時間和幀信息
pygame.transform 縮放和移動圖像

cdrom模塊的經常使用方法

方法名 功能
pygame.cdrom.init() 初始化 cdrom 模塊,該方法將掃描系統內全部的 CD 設備
pygame.cdrom.quit() 還原 cdrom 模塊,在調用該方法後,現存的任何 CD 對象都將中止工做
pygame.cdrom.get_init() 若是 cdrom 模塊初始化完成,則返回 true,不然返回 false
pygame.cdrom.get_count() 返回系統中 cd 驅動器的個數

display模塊的經常使用方法

方法名 功能
pygame.display.init() 初始化display模塊
pygame.display.quit() 結束display模塊
pygame.display.get_init() 若是display模塊已經被初始化,則返回True
pygame.display.set_mode() 初始化一個準備顯示的界面
pygame.display.get_surface() 獲取當前的Surface對象
pygame.display.flip() 更新整個待顯示的Surface對象到屏幕上
pygame.display.update() 更新部份內容顯示到屏幕上,若是沒有參數,則與flip功能相同(上一條)

draw繪圖

方法名 功能
pygame.draw.rect(surface,color,Rect,width=0) 繪製一個矩形框
pygame.draw.polygon(surface,color,pointlist,width=0) 繪製一個多邊形
pygame.draw.circle(surface,color,pos,radius,width=0) 繪製一個圓
pygame.draw.ellipse(surface,color,Rect,width=0) 繪製一個橢圓
pygame.draw.arc(surface,color,Rect,start_angle,stop_angle,width=1) 繪製一條弧線
pygame.draw.line(surface,color,start_pos,end_pos,width=1) 繪製一條線段
pygame.draw.lines(surface,color,closed,pointlist,width=1) 繪製一條折線
pygame.draw.aaline(surface,color,start_pos,end_pos,width=1) 繪製一根平滑的線
pygame.draw.aalines(surface,color,closed,pointlist,width=1) 一系列平滑的線

cursors加載光標

方法名 功能
pygame.cursors.compile() 由純字符串建立二進制光標數據
pygame.cursors.load_xbm() 由一個xbm 文件載入光標數據

event事件

方法名 功能
pygame.event.get() 獲取事件的返回值,使用event.type進行區分
pygame.event.wait() 等待發生一個事件纔會繼續下去
pygame.event.poll() 會根據如今的情形返回一個真實的事件
pygame.event.set_blocked(事件名) 過濾
pygame.event.set_allowed() 容許事件

繪製文字

pygame.font.Font(filename, size)

返回一個特定字體對象,可以使用該特定字體去定義文本工具

  • filename:字體文件的文件名。若是file參數設置爲None則默認採用系統自帶字體,若是自帶字體文件沒法打開就會報錯。
  • size:字體的高height,單位爲像素;
pygame.font.Font.render(text, antialias, color, background=None)

返回一個surface對象(字體的渲染成的圖像)字體

  • text:要顯示的文字;
  • antialias: 爲True時文本圖像顯示更光滑,爲False時文本圖像顯示有鋸齒狀;
  • color:字體顏色;
  • background:背景顏色(可選參數),默認爲小黑屏;

image圖像

方法名 功能
pygame.image.load() 從文件加載新圖片
pygame.image.save() 將圖像保存到磁盤上
pygame.image.get_extended() 檢測是否支持載入擴展的圖像格式
pygame.image.tostring() 將圖像轉換爲字符串描述
pygame.image.fromstring() 將字符串描述轉換爲圖像
pygame.image.frombuffer() 建立一個與字符串描述共享數據的 Surface 對象

mouse鼠標

方法名 功能
pygame.mouse.get_pressed() 獲取鼠標按鈕的狀態
pygame.mouse.get_pos() 獲取鼠標光標位置
pygame.mouse.get_rel() 獲取鼠標移動的數量
pygame.mouse.set_pos() 設置鼠標光標位置
pygame.mouse.set_visible() 隱藏或顯示鼠標光標
pygame.mouse.get_focused() 檢查顯示是否接收了鼠標輸入
pygame.mouse.set_cursor() 爲系統鼠標光標設置圖像

mixer播放音頻

方法名 功能
pygame.mixer.music.load() 載入一個音樂文件用於播放
pygame.mixer.music.play() 開始播放音樂流
pygame.mixer.music.rewind() 從新開始播放音樂
pygame.mixer.music.stop() 結束音樂播放
pygame.mixer.music.pause() 暫停音樂播放
pygame.mixer.music.unpause() 恢復音樂播放
pygame.mixer.music.fadeout() 淡出的效果結束音樂播放
pygame.mixer.music.set_volume() 設置音量
pygame.mixer.music.get_volume() 獲取音量
pygame.mixer.music.get_busy() 檢查是否正在播放音樂
pygame.mixer.music.set_pos() 設置播放的位置
pygame.mixer.music.get_pos() 獲取播放的位置
pygame.mixer.music.queue() 將一個音樂文件放入隊列中,並排在當前播放的音樂以後
pygame.mixer.music.set_endevent() 當播放結束時發出一個事件
pygame.mixer.music.get_endevent() 獲取播放結束時發送的事件

Surface對象的經常使用方法

方法名 功能
pygame.Surface.blit() 將一個圖像畫到另外一個圖像上
pygame.Surface.convert() 轉換圖像的像素格式
pygame.Surface.convert_alpha() 轉化圖像的像素格式,包含alpha通道的轉換
pygame.Surface.fill() 使用顏色填充Surface
pygame.Surface.get_rect() 獲取Surface的矩形區域

time時間

方法名 功能
pygame.time.get_ticks() 獲取以毫秒爲單位的時間
pygame.time.wait() 暫停程序一段時間
pygame.time.delay() 暫停程序一段時間
pygame.time.set_timer() 在事件隊列上重複建立一個事件
pygame.time.Clock() 建立一個對象來幫助跟蹤時間

transform縮放和移動圖像

方法名 功能
pygame.transform.flip 垂直和水平翻轉
pygame.transform.scale 調整大小到新的分辨率
pygame.transform.rotate 旋轉圖像
pygame.transform.rotozoom 過濾的比例和旋轉
pygame.transform.scale2x 專業圖像倍增器
pygame.transform.smoothscale 將表面平滑地縮放到任意大小
pygame.transform.chop 獲取內部區域已刪除的圖像副本
pygame.transform.laplacian 找到表面中的邊緣
pygame.transform.average_surfaces 從許多表面找到平均表面
pygame.transform.average_color 找到曲面的平均顏色
pygame.transform.threshold 查找表面中的哪些像素和多少像素在'search_color'或'search_surf'的閾值內

Pygame裏經常使用的事件

事件 產生途徑 參數
QUIT 用戶按下關閉按鈕 none
ACTIVEEVENT Pygame被激活或者隱藏 gain, state
KEYDOWN 鍵盤被按下 unicode, key, mod
KEYUP 鍵盤被放開 key, mod
MOUSEMOTION 鼠標移動 pos, rel, buttons
MOUSEBUTTONDOWN 鼠標按下 pos, button
MOUSEBUTTONUP 鼠標放開 pos, button
VIDEORESIZE Pygame窗口縮放 size, w, h
相關文章
相關標籤/搜索