您好,登錄后才能下訂單哦!
這篇文章主要介紹了怎么用pygame創(chuàng)建窗口,具有一定借鑒價(jià)值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。
首先我們需要導(dǎo)入模塊:
import pygame, sys
然后需要初始化pygame,我定義了一個(gè)pygame_test()方法,所以如果需要執(zhí)行程序的話,要調(diào)用這個(gè)方法喲:
import pygame, sys def pygame_test(): # 初始化 pygame.init()
初始化之后就可以開(kāi)始創(chuàng)建窗口了,我創(chuàng)建了一個(gè)500x500的窗口,這時(shí)執(zhí)行程序我們就能看到創(chuàng)建被創(chuàng)建好了,但是窗口出現(xiàn)后馬上就會(huì)退出:
import pygame, sys def pygame_test(): # 初始化 pygame.init() # 創(chuàng)建一個(gè)窗口 screen = pygame.display.set_mode((500, 500)) # 設(shè)置窗口標(biāo)題 pygame.display.set_caption('這是一個(gè)窗口標(biāo)題') pygame_test()
所以我們可以給它加上一個(gè)while循環(huán),將值設(shè)為T(mén)rue(也就是一個(gè)死循環(huán))。可以通過(guò)不斷循環(huán)來(lái)偵聽(tīng)事件,如果想要退出程序可以使用sys.exit()。
import pygame, sys def pygame_test(): # 初始化 pygame.init() # 創(chuàng)建一個(gè)窗口 screen = pygame.display.set_mode((500, 500)) # 設(shè)置窗口標(biāo)題 pygame.display.set_caption('這是一個(gè)窗口標(biāo)題') # 通過(guò)不斷循環(huán)來(lái)偵聽(tīng)事件 while True: # get():獲取事件的返回值 for event in pygame.event.get(): # 判斷事件是否是退出事件,是則退出 if event.type == pygame.QUIT: # 先退出pygame窗口,再退出程序 pygame.quit() sys.exit() pygame_test()
這樣的話執(zhí)行代碼時(shí),就會(huì)彈出一個(gè)可以正常運(yùn)行并關(guān)閉的窗口了。如果我們想要給窗口添加背景顏色需要用到fill()方法。比如說(shuō)我們給窗口添加一個(gè)藍(lán)色的背景顏色,然后再添加一個(gè)鼠標(biāo)單擊事件,當(dāng)單擊鼠標(biāo)時(shí),背景顏色會(huì)變?yōu)榉凵?/span>
import pygame, sys def pygame_test(): # 初始化 pygame.init() # 創(chuàng)建一個(gè)窗口 screen = pygame.display.set_mode((500, 500)) # 設(shè)置窗口標(biāo)題 pygame.display.set_caption('這是一個(gè)窗口標(biāo)題') # 通過(guò)不斷循環(huán)來(lái)偵聽(tīng)事件 while True: # 給屏幕填充淡藍(lán)色 screen.fill((135, 206, 250)) # get():獲取事件的返回值 for event in pygame.event.get(): # 判斷事件是否是退出事件,是則退出 if event.type == pygame.QUIT: # 先退出pygame窗口,再退出程序 pygame.quit() sys.exit() # 單擊鼠標(biāo)窗口顏色變?yōu)榉奂t色 if event.type == pygame.MOUSEBUTTONDOWN: screen.fill((255, 192, 203)) # 更新整個(gè)待顯示的 Surface 對(duì)象到屏幕上 pygame.display.flip() pygame_test()
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享怎么用pygame創(chuàng)建窗口內(nèi)容對(duì)大家有幫助,同時(shí)也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,遇到問(wèn)題就找億速云,詳細(xì)的解決方法等著你來(lái)學(xué)習(xí)!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。