1. 创建窗口
import pygame
#初始化游戏相关硬件
pygame.init()
#.创建游戏窗口
#set_mode(width, height) 设置窗口大小
window = pygame.display.set_mode((600, 400))
#游戏循环(保证游戏能够一直运行)
while True:
#4.检测事件
for event in pygame.event.get():
#判断事件类型,根据不同的事件做不同的事情
if event.type == pygame.QUIT:
exit() #关闭程序
2. 显示图片
import pygame
#初始化游戏相关硬件
pygame.init()
#创建游戏窗口
#set_mode(width, height) 设置窗口大小
window = pygame.display.set_mode((600, 400))
#设置窗口标题
pygame.display.set_caption('图片')
#设置窗口背景颜色
window.fill((0, 100, 0))
#加载图片
image1 = pygame.image.load('./files./luffy4.jpg')
#图片的缩放 scale(图片对象, 大小)
image1 = pygame.transform.scale(image1, (200, 200))
#图片的旋转 rotozoom(图片对象, 旋转角度, 缩放比例)
image1 = pygame.transform.rotozoom(image1, 45, 0.5)
#获取图片大小
img_w1, img_h1 = image1.get_size()
print(img_w1, img_h1)
#显示图片 bilt(显示对象, 位置)
window.blit(image1, (0, 0))
#刷新屏幕
pygame.display.flip()
#游戏循环(保证游戏能够一直运行)
while True:
#4.检测事件
for event in pygame.event.get():
#判断事件类型,根据不同的事件做不同的事情
if event.type == pygame.QUIT:
exit() #关闭程序
3. 显示字体
import pygame
#初始化游戏相关硬件
pygame.init()
#创建游戏窗口
#set_mode(width, height) 设置窗口大小
window = pygame.display.set_mode((600, 400))
#设置窗口标题
pygame.display.set_caption('图片')
#设置窗口背景颜色
window.fill((0, 100, 0))
#创建字体对象
#1.系统字体 SysFont(字体名字, 字体大小, 是否加粗=False, 是否倾斜=Flase)
#2.自定义字体 Font(字体文件路径, 字体大小)
font1 = pygame.font.Font('./files/aa.ttf', 50)
#创建字体对象 render(文字, 是否平滑, 文字颜色, 背景颜色=None)
text = font1.render('hello pygame 你好', True, (0, 0, 0), (255, 255, 0))
#获取文字对象大小
t_w, t_h = text.get_size()
#旋转文字
text = pygame.transform.rotozoom(text, 45, 1)
#显示文字对象
window.blit(text, (0, 0))
#加载图片
image1 = pygame.image.load('./files./luffy4.jpg')
#图片的缩放 scale(图片对象, 大小)
image1 = pygame.transform.scale(image1, (200, 200))
#图片的旋转 rotozoom(图片对象, 旋转角度, 缩放比例)
image1 = pygame.transform.rotozoom(image1, 45, 0.5)
#获取图片大小
img_w1, img_h1 = image1.get_size()
print(img_w1, img_h1)
#显示图片 bilt(显示对象, 位置)
window.blit(image1, (0, 0))
#刷新屏幕
pygame.display.flip()
#游戏循环(保证游戏能够一直运行)
while True:
#4.检测事件
for event in pygame.event.get():
#判断事件类型,根据不同的事件做不同的事情
if event.type == pygame.QUIT:
exit() #关闭程序
4. 显示图形
import pygame
#初始化游戏相关硬件
pygame.init()
#创建游戏窗口
#set_mode(width, height) 设置窗口大小
window = pygame.display.set_mode((600, 400))
window.fill((255, 255, 255))
#画直线 line(画在哪里, 颜色, 起点, 终点, 线宽=1)
pygame.draw.line(window, (255, 0, 0), (10, 10), (10, 100), 5)
#def lines(Surface, color, closed, pointlist, width=1)
points = [(20, 20), (300, 200), (200, 400), (120, 100), (500, 50)]
pygame.draw.lines(window, (0, 255, 0), True, points)
#画圆 def circle(Surface, color, pos, redius, width=0)
#圆环
pygame.draw.circle(window, (0, 0, 255), (100, 100), 50, 2)
#实心圆
pygame.draw.circle(window, (255,255, 0), (100, 200), 50, 0)
#画椭圆 def ellipse(Surface, color, Rect, width=0)
pygame.draw.ellipse(window, (0, 23, 200), (300, 200, 200, 100))
#画弧线 def arc(Surface, color, Rect, start_angle, stop_angle, width=1)
# start_angle, stop_angle 弧度(0~2pi)
pi = 3.1415926
pygame.draw.arc(window, (0, 0, 0), (20, 250, 100, 100), pi/4, 3*pi/4, 5)
#画多边形 def polygon(Surface, color, pointlist, width=0)
points2 = [(100, 100), (120, 200), (80, 200)]
pygame.draw.polygon(window, (20, 200, 100), points2)
pygame.display.flip()
#3.游戏循环(保证游戏能够一直运行)
while True:
#4.检测事件
for event in pygame.event.get():
#判断事件类型,根据不同的事件做不同的事情
if event.type == pygame.QUIT:
exit() #关闭程序
5. 动画
import pygame
from random import randint
#初始化游戏相关硬件
pygame.init()
#创建游戏窗口
#set_mode(width, height) 设置窗口大小
window = pygame.display.set_mode((600, 400))
window.fill((255, 255, 255))
text = pygame.font.SysFont('Times', 50).render('hello', True, (255, 0, 255))
window.blit(text, (100, 200)) #blit()显示图片或者字体
pygame.draw.circle(window, (255, 0, 0), (100, 100), 50)#画圆
c_x = 100 #圆心的横坐标
c_y = 100 #圆心的纵坐标
#第一次刷新
pygame.display.flip()
num = 0
speed = 3 #圆的移动速度
r = 50
speed2 = 1 #圆的半径的变化单位
#3.游戏循环(保证游戏能够一直运行)
while True:
pygame.time.delay(10)
pygame.draw.circle(window, (255, 255, 255), (c_x, c_y), r)
r += speed2
if r> 100:
r = 100
speed2 *= -1
elif r < 10:
speed2 *= -1
#移动
c_y += speed
if c_y >= 550:
c_y = 550
speed *= -1
elif c_y <50:
c_y = 50
speed *= -1
pygame.draw.circle(window, (randint(0, 255), randint(0, 255), randint(0, 255)), (c_x, c_y), r)
pygame.display.flip()
window.blit(text, (100, 200))
for event in pygame.event.get():
#判断事件类型,根据不同的事件做不同的事情
if event.type == pygame.QUIT:
exit() #关闭程序
6. 事件
import pygame
from random import randint
#初始化游戏相关硬件
pygame.init()
#2.创建游戏窗口
#set_mode(width, height) 设置窗口大小
window = pygame.display.set_mode((600, 400))
window.fill((255, 255, 255))
pygame.draw.circle(window, (255, 255, 0), (100, 100), 50)
pygame.display.flip()
is_blink = False
#3.游戏循环(保证游戏能够一直运行)
while True:
if is_blink:
window.fill((255, 255, 255))
pygame.draw.circle(window, (randint(0, 255), randint(0, 255), randint(0, 255)), (100, 100), 50)
pygame.display.update()
for event in pygame.event.get():
#判断事件类型,根据不同的事件做不同的事情
if event.type == pygame.QUIT:
exit() #关闭程序
elif event.type == pygame.MOUSEBUTTONDOWN:
print('鼠标按下', event.pos)
is_blink = not is_blink
elif event.type == pygame.MOUSEBUTTONUP:
print('鼠标弹起', event.pos)
elif event.type == pygame.MOUSEMOTION:
print('动', event.pos)
pygame.draw.circle(window, (randint(0, 255), randint(0, 255), randint(0, 255)), event.pos, 100)
pygame.display.update()
elif event.type == pygame.KEYDOWN:
print('键盘按下', event.key, chr(event.key))
elif event.type == pygame.KEYUP:
print('键盘弹起', event.key, chr(event.key))件