python3 pygame学习(1):display的使用

这段时间打算学习pygame写一个简单的小游戏,因此把学习过程中的点点滴滴记录下来,供大家参考,以及自己复习。

首先安装python和pygame,(python3  -m pip install pygame)相信大家都安装好了吧!

好了直接进入正题,pygame的学习。(笔者有py2和py3两个环境,因为py3对中文支持友好,而且是大势所趋,所以用python3和pygame1.9.2进行开发。)

进入正题,pygame的学习。

1:导入pygame库,以及pygame中的所有常量

import pygame
from pygame.locals import *

2:初始化窗口

screen=pygame.display.set_mode((800,600))

实际上pygame.display.set_mode()这个函数会返回一个Surface对象,他是位图的一种。


3:加载和显示图标

#加载图标
icon=pygame.image.load("timg.jpg").convert_alpha()
#显示图标
pygame.display.set_icon(icon)


4:设置标题

pygame.display.set_caption("仙剑奇侠传-蝶恋")


5:显示背景图片

#背景图片
background=pygame.image.load("timg.jpg").convert_alpha()
screen.blit(background,(0,0))
#更新显示屏幕
pygame.display.update()

pygame.image.load()函数用来加载位图,convert_alpha()方法会使用透明的方法绘制前景对象,因此在加载一个有alpha通道的素材时(比如PNG TGA),需要使用convert_alpha()方法,当然普通的图片也是可以使用这个方法的,用了也不会有什么副作用。

前面说过pygam.image.load()会返回一个surface对象,这个对象有一个blit方法,这个方法有两个参数,一个是加载完成的位图,第二个参数是绘制起始坐标。


好了大功告成!

# coding=utf-8
import pygame
from pygame.locals import *

def main():
	pygame.mixer.init()
	#创建一个800x600的窗口
	screen=pygame.display.set_mode((800,600))
	#加载图标
	icon=pygame.image.load("timg.jpg").convert_alpha()
	#显示图标
	pygame.display.set_icon(icon)
	#设置标题
	pygame.display.set_caption("仙剑奇侠传-蝶恋")
	#背景图片
	background=pygame.image.load("timg.jpg").convert_alpha()

	while True:

		for event in pygame.event.get():
			if event.type == QUIT:
				return

		screen.blit(background,(0,0))
		#更新显示屏幕
		pygame.display.update()

if __name__ == '__main__':
	main()


python3 pygame学习(1):display的使用_第1张图片


代码最后使用while循环是为了让窗口一直进行下去,如若不然,则会一闪而过。


pygame第一个窗口小程序完成!





























你可能感兴趣的:(python,pygame,python,游戏)