python pygame基礎1 定義視窗

2021-08-19 22:57:00 字數 4467 閱讀 1030

import pygame

一、定義乙個視窗

screen=pygame.display.set_mode((400,300))

pygame.display.set_caption('first--create a window')  #視窗的標題

怎麼退出

running=true

while running:

event=pygame.event.wait()

if event.type==pygame.quit:

running==false

pygame.quit()\

# -*- coding: cp936 -*-

# 匯入pygame模組

import

pygame  

# 定義乙個視窗

screen = pygame.display.set_mode((400

,300

))  

# 視窗的標題

pygame.display.set_caption('first--create a window'

)  # 接下來是解決怎麼退出 這段**是從pygame.org的tutorial上學的

running = true

while

running:  

event = pygame.event.wait()  

ifevent.type == pygame.quit:  

running = false

pygame.quit()  

二、在視窗上輸出文字

# -*- coding: cp936 -*-

import

sys,string,os  

import

pygame  

from

pygame.locals 

import

*  # 初始化視窗

pygame.init()  

# 設定視窗大小

window = pygame.display.set_mode((300

,400

))  

# 設定視窗標題

pygame.display.set_caption("second_show txt"

)  # 建立字型物件,字型大小為20

font = pygame.font.font(os.environ['systemroot'

]+u"//fonts",20

)  # 生成文字

text = font.render(u"pygame入門",1

,(255,0

,0))  

# 取得文字區域大小 我這裡是將

textpos = text.get_rect()  

textpos.centery = window.get_rect().centery  

textpos.centerx = window.get_rect().centerx  

# 顯示文字到window上

window.blit(text,textpos)  

# 事件迴圈

running = true

while

running:  

pygame.display.flip()  

#這裡用pygame.display.update()也是一樣的效果

forevent 

inpygame.event.get():  

ifevent.type == pygame.quit:  

running = false

pygame.quit()  

三、新的視窗

模組名功能

pygame.cdrom

訪問光碟機

pygame.cursors

載入游標

pygame.display

訪問顯示裝置

pygame.draw

繪製形狀、線和點

pygame.event

管理事件

pygame.font

使用字型

pygame.image

載入和儲存

pygame.joystick

使用遊戲手柄或者 類似的東西

pygame.key

讀取鍵盤按鍵

pygame.mixer

聲音pygame.mouse

滑鼠pygame.movie

pygame.music

pygame.overlay

pygame

就是我們在學的這個東西了……

pygame.rect

管理矩形區域

pygame.sndarray

操作聲音資料

pygame.sprite

操作移**像

pygame.su***ce

管理影象和螢幕

pygame.su***rray

管理點陣影象資料

pygame.time

管理時間和幀資訊

pygame.transform

縮放和移**像

#指定影象檔案名稱

import pygame

#匯入pygame庫

from pygame.locals import *

#匯入一些常用的函式和常量

from sys import exit

#向sys模組借乙個exit函式用來退出程式

pygame.init()

#初始化pygame,為使用硬體做準備

screen = pygame.display.set_mode((640, 480), 0, 32)

#建立了乙個視窗  解析度,標誌位,色深

pygame.display.set_caption("hello, world!")

#設定視窗標題

background = pygame.image.load(background_image_filename).convert()

mouse_cursor = pygame.image.load(mouse_image_filename).convert_alpha()

#載入並轉換影象

#將影象轉換為su***ce物件

while true:

#遊戲主迴圈

for event in pygame.event.get():

if event.type == quit:

#接收到退出事件後退出程式

exit()

screen.blit(background, (0,0))

#將背景圖畫上去

#第乙個引數是su***ce物件,第二個引數是左上角的位置

x, y = pygame.mouse.get_pos()

#獲得滑鼠位置

x-= mouse_cursor.get_width() / 2

y-= mouse_cursor.get_height() / 2

#計算游標的左上角位置

screen.blit(mouse_cursor, (x, y))

#把游標畫上去

pygame.display.update()

#重新整理一下畫面

pygame.display.set_mode(解析度,標誌位,色深)

1.set_mode返回乙個su***ce物件,代表了桌面上的那個大小。第乙個引數(必須)表示解析度(400*600),表示視窗的大小400*600。第二個是乙個標誌位,具體意思見下表,如果不用什麼特性,就指定0;第三個為色深。

標誌位功能

fullscreen

建立乙個全屏視窗

doublebuf

建立乙個「雙緩衝」視窗,建議在hwsu***ce或者opengl時使用

hwsu***ce

建立乙個硬體加速的視窗,必須和fullscreen同時使用

opengl

建立乙個opengl渲染的視窗

resizable

建立乙個可以改變大小的視窗

noframe

建立乙個沒有邊框的視窗

2.convert函式是把影象轉換為su***ce物件,如果不寫python也會自動把image轉換成su***ce

3.遊戲的主迴圈是乙個無限迴圈,直到使用者跳出。在這個主迴圈裡做的事情就是不停地畫背景和更新游標位置,雖然背景是不動的,我們還是需要每次都畫它, 否則滑鼠覆蓋過的位置就不能恢復正常了。

4.blit

是個重要函式,第乙個引數為乙個su***ce物件,第二個為左上角位置。畫完以後一定記得用

update

更新一下,否則畫面一片漆黑。

pygame.display.update()

Python pygame如何安裝?

linux 下安裝 python2 下執行 sudo pip2 install pygame驗證是否安裝成功 python2 m pygame.examples.alienspython3 下執行 sudo pip3 install pygame驗證是否安裝成功 python3 m pygame.e...

python pygame 事件學習

coding utf 8 import pygame import sys from pygame.locals import 初始化pygame pygame.init size width,height 600,400 speed 2,1 bg 255,255,255 rgb 建立指定大小的視窗...

Python Pygame動畫原理

這是動畫原理的第一節,首先需要遊戲的最小系統,在此之後我就不再提遊戲最小系統了,那是最基本的,可以看我的第一篇 所有 配套資源 講解都在github coding notes幫助更多的人,還有python其他資源,以及c 課程 零基礎 python體驗課 第四季 pygame遊戲開發 pygame移...