day15 pygame

2019-03-25  本文已影响0人  我去买个橘子o

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))件
上一篇下一篇

猜你喜欢

热点阅读