溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

如何用Python pygame設(shè)置窗口標(biāo)題和圖標(biāo)

發(fā)布時(shí)間:2021-06-15 14:22:57 來(lái)源:億速云 閱讀:1086 作者:chen 欄目:開(kāi)發(fā)技術(shù)

本篇內(nèi)容主要講解“如何用Python pygame設(shè)置窗口標(biāo)題和圖標(biāo)”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“如何用Python pygame設(shè)置窗口標(biāo)題和圖標(biāo)”吧!

窗口標(biāo)題

pygame.display.set_caption(title, icontitle=None)
'''
	? title設(shè)置窗口的標(biāo)題內(nèi)容
	? icontitle設(shè)置圖表化后的小標(biāo)題
	? 小標(biāo)題可選,部分系統(tǒng)沒(méi)有,一般不設(shè)置
'''
pygame.display.get_caption()
'''
? 返回當(dāng)前設(shè)置窗口的標(biāo)題及小標(biāo)題內(nèi)容
? 返回結(jié)構(gòu)為(title, icontitle)
? 該函數(shù)與游戲交互邏輯配合,可以根據(jù)游戲情節(jié)修改標(biāo)題內(nèi)容
'''

設(shè)置圖標(biāo)

pygame.display.set_icon(surface)
'''
? 設(shè)置窗口的圖標(biāo)效果
? 圖標(biāo)是一個(gè)Surface對(duì)象
'''

游戲帶圖標(biāo)

我把圖標(biāo)改成我的CSDN頭像了格式:(128px*128px png格式)

如何用Python pygame設(shè)置窗口標(biāo)題和圖標(biāo)

導(dǎo)入圖片設(shè)置成圖標(biāo)。

如何用Python pygame設(shè)置窗口標(biāo)題和圖標(biāo)

import pygame,sys

pygame.init()
icon = pygame.image.load("img/xyicon.png")
pygame.display.set_icon(icon)     #設(shè)置圖標(biāo)
v = pygame.display.Info()
size = width,height = 600,400
speed = [1,1]
BLACK = 0, 0, 0
s = pygame.display.set_mode(size,pygame.RESIZABLE)
pygame.display.set_caption("hi 滑稽")
ball = pygame.image.load("img/361.png")
ballrect = ball.get_rect()
fps = 200
fclock = pygame.time.Clock()
while True:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            sys.exit()
        elif event.type == pygame.KEYDOWN:
            if event.key == pygame.K_LEFT:
                speed[0] = speed[0] if speed[0] == 0 else (abs(speed[0]) - 1)*int(speed[0]/abs(speed[0]))
            elif event.key == pygame.K_RIGHT:
                speed[0] = speed[0] + 1 if speed[0] > 0 else speed[0] - 1
            elif event.key == pygame.K_UP:
                speed[1] = speed[1] + 1 if speed[1] > 0 else speed[1] - 1
            elif event.key == pygame.K_DOWN:
                speed[1] = speed[1] if speed[1] == 0 else (abs(speed[1]) - 1)*int(speed[1]/abs(speed[1]))
            elif event.key == pygame.K_ESCAPE:     # 獲取ESC  按下時(shí)退出
                sys.exit()
        elif event.type == pygame.VIDEORESIZE:
            size = width,height = event.w,event.h
            s = pygame.display.set_mode(size,pygame.RESIZABLE)
    ballrect = ballrect.move(speed)
    if ballrect.left < 0 or ballrect.right > width:
        speed[0] = - speed[0]
    if ballrect.top < 0 or ballrect.bottom > height:
        speed[1] = - speed[1]
    pygame.display.get_caption()
    s.fill(BLACK)
    s.blit(ball, ballrect)
    pygame.display.update()
    fclock.tick(fps)

屏幕控制

pygame.display.get_active()
'''
? 當(dāng)窗口在系統(tǒng)中顯示(屏幕繪制/非圖標(biāo)化)時(shí)返回True,否則返回False
pygame.display.get_active()
? 該函數(shù)可以用來(lái)判斷是否游戲窗口被最小化
? 進(jìn)一步,判斷后可以暫停游戲,改變響應(yīng)模式等
'''

刷新

pygame.display.flip()
# ? 重新繪制整個(gè)窗口
pygame.display.update()
#? 僅重新繪制窗口中有變化的區(qū)域,相比.flip()執(zhí)行更快

判斷窗體

如果窗體最小化則小球停止運(yùn)動(dòng)。在小球運(yùn)動(dòng)代碼前加上此條件即可

如何用Python pygame設(shè)置窗口標(biāo)題和圖標(biāo)

到此,相信大家對(duì)“如何用Python pygame設(shè)置窗口標(biāo)題和圖標(biāo)”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢(xún),關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問(wèn)一下細(xì)節(jié)

免責(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)容。

AI