小編寫這篇文章的一個(gè)主要目的,主要給大家講解的內(nèi)容,主要是關(guān)于pygame的一些問題解答,pygame是用python來(lái)進(jìn)行編譯的,那么,怎么使用pygame用來(lái)自定義窗口呢?下面就相關(guān)的操作指南,給大家詳細(xì)介紹下。
1.首先,我們需要導(dǎo)入幾個(gè)相關(guān)模塊
import pygame import sys from pygame.locals import*
2,初始化游戲
pygame.init()#是一定要添加的
與其對(duì)應(yīng)的是pygame.quit(),關(guān)閉pygame。
3,創(chuàng)建窗口及標(biāo)題
screen=pygame.display.set_mode(size=(1118,633),flags=0,depth=32)#繪制屏幕大小及相關(guān)數(shù)據(jù) pygame.display.set_caption('小游戲')#設(shè)置標(biāo)題 background=pygame.image.load('')#加載背景圖片,括號(hào)里填圖片位置 screen.blit(background,(0,0))#繪制背景圖片位置,括號(hào)內(nèi)表示坐標(biāo) pygame.display.update()#記得刷新屏幕,很重要
pygame.display.set_mode()函數(shù)中size=(a,b)表示繪制屏幕尺寸大小,a,b分別代表長(zhǎng)和寬,
pygame中坐標(biāo)情況如下:
這里要注意:其原點(diǎn)在左上角。
flags是標(biāo)志位,默認(rèn)為0。
對(duì)其常見相關(guān)參數(shù)說明:
flags=0用戶設(shè)置的窗口大小
flags=pygame.FULLSCREEN創(chuàng)建一個(gè)全屏窗口
flags=pygame.RESIZABLE創(chuàng)建一個(gè)可以改變大小的窗口
flags=pygame.NOFRAME創(chuàng)建一個(gè)沒有邊框的窗口
flags=pygame.OPENGL創(chuàng)建一個(gè)OPENGL渲染的窗口
depth是顏色位數(shù)
8位:含有256種顏色
16位:包含高達(dá)65000種顏色
32位:包含4294967296種顏色
4,創(chuàng)建主循環(huán)
while True: for event in pygame.event.get(): if event.type==QUIT: pygame.quit() sys.quit()
pygame.event.get(),,從事件隊(duì)列中獲取一個(gè)事件,并從隊(duì)列中刪除該事件,這里用到了QUIT事件,也就是用戶按下窗口的關(guān)閉按鈕,然后退出pygame.有了主循環(huán),我們可以長(zhǎng)時(shí)間的觀察我們建立的窗口,也可對(duì)此窗口大小進(jìn)行更改。
常用的enent事件有如下:
QUIT:用戶按下窗口的關(guān)閉按鈕
ATIVEEVENT:Pygame被激活或者隱藏
KEYDOWN:鍵盤按下
KEYUP:鍵盤放開
我們其實(shí)還可以用time.sleep()方法停留我們建立的窗口,以此來(lái)觀察其尺寸大小
import time#需要我們導(dǎo)入time模塊
再后面添加利用此函數(shù)
time.sleep(5)
此時(shí)我們便有5s觀察時(shí)間。
附:pygame窗口無(wú)法正常關(guān)閉的解決方法
運(yùn)行以下程序,將解決問題
import sys import pygame def run_game(): pygame.init() screen=pygame.display.set_mode((1200,800)) pygame.display.set_caption("Apple") #開始游戲的主循環(huán) while True: #監(jiān)視鍵盤和鼠標(biāo)事件 for event in pygame.event.get(): if event.type==pygame.QUIT: pygame.quit() sys.exit() run_game()
綜上所述,這篇文章就給大家介紹到這里了,希望可以給大家?guī)?lái)幫助。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/128329.html
pygame作為一個(gè)跨平臺(tái)的python數(shù)據(jù)庫(kù),編輯起來(lái)也是比較的簡(jiǎn)單的,只需要一段簡(jiǎn)潔的代碼,就能高效的完成一些任務(wù),能夠快速的實(shí)現(xiàn)其相關(guān)的一些應(yīng)用服務(wù)。那么,如何使用pygame去做自定義窗口呢?怎么創(chuàng)建操作指南?下面給大家詳細(xì)解答下?! ?.首先,我們需要導(dǎo)入幾個(gè)相關(guān)模塊 importpygame importsys frompygame.localsimport* 2,初始...
摘要:結(jié)果在安裝完之后,安裝也要安裝之后,運(yùn)行常規(guī)的測(cè)試函數(shù)返回的數(shù)字是,排除問題的方法就是把已知可以的子模塊都先運(yùn)行掉。說了這么多,它到底了哪些子模塊我把官網(wǎng)上面的里介紹的所有帶有的子模塊都運(yùn)行了一遍。 環(huán)境Python3.6.8pygame1.9.4 貼上報(bào)錯(cuò)源碼: import pygame my_font = pygame.font.SysFont(arial, 16) my_fon...
摘要:和標(biāo)志,用于表示飛船是否正在移動(dòng),用于實(shí)現(xiàn)飛船在不松開按鍵下連續(xù)移動(dòng)。重寫了函數(shù),用于繪制飛船模塊該模塊主要是集中處理游戲中發(fā)生的各種事件。函數(shù)用于監(jiān)聽游戲的事件,比如,它表示游戲推出事件和分別表示鍵盤按下與松開事件。 《Python編程:從入門到實(shí)踐》筆記。本章主要學(xué)習(xí)如何使用pygame編寫一個(gè)簡(jiǎn)單的小飛機(jī)打外星人的游戲,由于本人對(duì)用python寫游戲并不是特別感興趣,所以主要是看...
pygame作為python的一個(gè)平臺(tái)庫(kù),在做游戲的時(shí)候,需要學(xué)習(xí)的內(nèi)容還是比較的多的,主要涉及到的內(nèi)容有相關(guān)的學(xué)習(xí)筆記,包括怎么設(shè)置字體,另外還有就是怎么設(shè)置其顯示中文呢?下面就給大家詳細(xì)解答下?! ∫弧@得可用字體 importpygame print(pygame.font.get_fonts()) 結(jié)果: ['arial','arialblack...
作者:海擁 主頁(yè):https://haiyong.blog.csdn.net/ ? Pygame是一組跨平臺(tái)的 Python 模塊,專為編寫視頻游戲而設(shè)計(jì)。它包括旨在與 Python 編程語(yǔ)言一起使用的計(jì)算機(jī)圖形和聲音庫(kù)。您可以使用 pygame 創(chuàng)建不同類型的游戲,包括街機(jī)游戲、平臺(tái)游戲等等。 使用的圖像: ?你可以控制玩家的移動(dòng)。為此,首先使用 pygame 的 display.set...
閱讀 923·2023-01-14 11:38
閱讀 895·2023-01-14 11:04
閱讀 756·2023-01-14 10:48
閱讀 2055·2023-01-14 10:34
閱讀 961·2023-01-14 10:24
閱讀 840·2023-01-14 10:18
閱讀 510·2023-01-14 10:09
閱讀 588·2023-01-14 10:02