Pygame Display顯示模塊的使用方法
Pygame 使用pygame.display顯示模塊中的方法創(chuàng)建游戲的主窗口:
screen = pygame.display.set_mode(size=(),flags=0)
上述函數(shù)有兩個參數(shù)常用參數(shù):
- size:元組參數(shù),用來設(shè)置主窗口的大小
- flags:功能標志位,表示創(chuàng)建的主窗口樣式,比如創(chuàng)建全屏窗口、無邊框窗口等,flags 參數(shù)值見下表。
標志位 | 功能 |
---|---|
pygame.FULLSCREEN | 創(chuàng)建一個全屏窗口。 |
pygame.HWSURFACE | 創(chuàng)建一個硬件加速窗口,必須和 FULLSCREEN 同時使用。 |
pygame.OPENGL | 創(chuàng)建一個 OPENGL 渲染窗口。 |
pygame.RESIZABLE | 創(chuàng)建一個可以改變大小的窗口。 |
pygame.DOUBLEBUF | 創(chuàng)建一個雙緩沖區(qū)窗口,建議在 HWSURFACE 或者 OPENGL 時使用。 |
pygame.NOFRAME | 創(chuàng)建一個沒有邊框的窗口。 |
體驗過電腦游戲的朋友們都知道,當運行程序后會在電腦桌面上出現(xiàn)一個游戲的主窗口,這個主窗口的本質(zhì)是一個 surface 對象,把理解為畫布、畫板、白紙在合適不過了,它相當于一個載體,用于承載一切游戲所用到的元素。假如您需要將一段文本方放置到主窗口中,那么您需要先創(chuàng)建一個包含文本的 surface 對象,之后再將它附加到主窗口上。簡單的理解,就是將一張圖 A 粘貼到另一張圖 B 上。
主窗口(screen)相當于游戲程序中尺寸最大的 Surface 對象,在這個最大的“畫布”中,我們還可以添加其他“小”的 Surface 對象,這些對象以矩形的形式存在于主窗口中,它們共同組成了一個游戲程序。通過下列方法可以將一個 Surface 對象粘貼至主窗口上:
scrren.blit(source, dest, area=None, special_flags = 0)
下面對上述參數(shù)做簡單的介紹:
- source:表示要粘貼的 Surface 對象。
- dest:主窗口中的一個標識的坐標位置,可以接受一個 (x,y) 元組,或者 (x,y,width,height) 元組,也可以是一個 Rect 對象;
- area:接受一個 Rect 對象,默認為 None,如果提供該參數(shù)則相當于摳圖操作,即在屏幕的指定區(qū)域顯示想要的內(nèi)容;
- special_flags:可選參數(shù),它是 Pygame.1.8 版本新增的功能,用于指定對應(yīng)位置顏色的混合方式,參數(shù)值有 BLEND_RGBA_ADD、BLEND_SUB 等。如果不提供該參數(shù)的情況下,默認使用 source 的顏色覆蓋 screen 的顏色。
除了創(chuàng)建游戲的主窗口之外,display 模塊還提供了許多的和“顯示”相關(guān)的方法,比如設(shè)置游戲窗口的名稱,如下表所示
import sys import pygame #使用pygame之前必須初始化 pygame.init() #設(shè)置主屏窗口 screen = pygame.display.set_mode((400,400)) #填充主窗口的背景顏色,參數(shù)值RGB(顏色元組) screen.fill((156,156,156)) #設(shè)置窗口標題 pygame.display.set_caption('c語言中文網(wǎng)') # 如果沒有下列主循環(huán)代碼,運行結(jié)果會一閃而過 while True: # 循環(huán)獲取事件,監(jiān)聽事件 for event in pygame.event.get(): # 判斷用戶是否點了關(guān)閉按鈕 if event.type == pygame.QUIT: #卸載所有模塊 pygame.quit() #終止程序 sys.exit() #更新屏幕內(nèi)容 pygame.display.flip()
程序的運行結(jié)果如下所示:
pygame.display 模塊還提供了一些和“顯示”相關(guān)的其他方法,如下表所示:
方法名稱 | 說明 |
---|---|
pygame.display.get_surface() | 獲取當前顯示的 Surface 對象。 |
pygame.display.flip() | 更新整個待顯示的 Surface 對象到屏幕上。 |
pygame.display.update() | 更新部分軟件界面顯示。 |
pygame.display.Info() | 產(chǎn)生一個 VideoInfo 對象,包含了顯示界面的相關(guān)信息。 |
pygame.display.set_icon() | 設(shè)置左上角的游戲圖標,圖標尺寸大小為 32*32。 |
pygame.display.iconify() | 將顯示的主窗口即 Surface 對象最小化,或者隱藏。 |
pygame.display.get_active() | 當前顯示界面顯示在屏幕上時返回 True,如果窗口被隱藏和最小化則返回 False。 |
到此這篇關(guān)于Pygame Display顯示模塊的使用方法的文章就介紹到這了,更多相關(guān)Pygame Display顯示模塊內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Window10上Tensorflow的安裝(CPU和GPU版本)
這篇文章主要介紹了Window10上Tensorflow的安裝(CPU和GPU版本),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-12-12Python入門開發(fā)教程 windows下搭建開發(fā)環(huán)境vscode的步驟詳解
大家都知道Python是跨平臺的,它可以運行在Windows、Mac和各種Linux/Unix系統(tǒng)上。在Windows上寫Python程序,放到Linux上也是能夠運行的,今天給大家分享Python開發(fā)環(huán)境搭建vscode的步驟,一起看看吧2021-07-07pycharm中django框架連接mysql數(shù)據(jù)庫的方法
這篇文章主要介紹了pycharm中django框架連接mysql數(shù)據(jù)庫的方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-04-04Python使用日志模塊快速調(diào)試代碼并記錄異常信息
本文詳細介紹了Python logging日志模塊的使用方法,包括如何在代碼中使用logging記錄調(diào)試信息、如何設(shè)置日志級別、如何記錄異常信息等。通過本文的指南,讀者可以快速學會如何使用logging模塊進行調(diào)試,并保留有用的日志信息,便于后續(xù)排查問題和優(yōu)化代碼2023-04-04