2018-10-22

import pygame

"""

1.鼠标事件:

事件类型:event.type

MOUSEBUTTONDOWN --> 鼠标按下

MOUSEBUTTONUP  --> 鼠标弹起

MOUSEMOTION --> 鼠标移动

关心鼠标的位置:event.pos

键盘事件

"""

import random

def rand_color():

    """随机颜色"""

    return random.randint(0,255), random.randint(0,255), random.randint(0,255)

pygame.init()

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

screen.fill((255,255,255))

pygame.display.flip()

while True:

    # 只要有事件产生就会进入for循环

    for eventin pygame.event.get():

        # 根据判断type的值来判断是什么事件产生了

        if event.type== pygame.QUIT:

            exit()

# =================鼠标事件=================

        elif event.type== pygame.MOUSEBUTTONDOWN:

            # 鼠标按下后要做什么事情就写在这儿...

            print('鼠标按下:', event.pos)

pygame.draw.circle(screen, rand_color(), event.pos, random.randint(10,40))

pygame.display.flip()

elif event.type== pygame.MOUSEBUTTONUP:

            # 鼠标按下后弹起

            print('鼠标弹起', event.pos)

elif event.type== pygame.MOUSEMOTION:

            # 鼠标移动

            print('鼠标移动', event.pos)

# pygame.draw.circle(screen, rand_color(), event.pos, 30)

# pygame.display.flip()

# ==================键盘事件======================

        elif event.type== pygame.KEYDOWN:

            print('按键按下:', event.key,chr(event.key))

elif event.type== pygame.KEYUP:

            print('按键弹起:', event.key,chr(event.key))

////////////////////////////////

import pygame

from mathimport pi

if __name__== '__main__':

    # 初始化,创建窗口

    pygame.init()

window= pygame.display.set_mode((400,600))

window.fill((255,255,255))

"""

1.画线段

def line(Surface, color, start_pos, end_pos, width=1)

Surface: 画在哪儿

color:线的颜色

start_pos: 起点

end_pos:终点

width: 线宽

"""

    # 画一条水平线

    pygame.draw.line(window, (255,0,0), (50,100), (200,100))

# 画一条垂直线

    pygame.draw.line(window, (0,255,0), (50,100), (50,200),2)

"""

2.画线段(折线)

def lines(Surface, color, closed, pointlist, width=1)

Surface: 画在哪儿

color: 线的颜色

closed: 是否闭合(是否连接起点和终点)

pointlist:点对应的列表

"""

    pygame.draw.lines(window, (0,0,255),True, [(100,200), (150,120), (140,300)])

"""

3.画圆

def circle(Surface, color, pos, radius, width=0)

Surface: 画在哪儿

color: 颜色

pos:圆心坐标

radius:半径

width: 线宽,0 -> 填充

"""

    pygame.draw.circle(window, (255,255,0), (200,300),100,0)

"""

4.画矩形

def rect(Surface, color, Rect, width=0)

Surface:画在哪儿

color: 颜色

Rect:范围(元祖,元祖中有四个元素,分别是x,y,width,height)

"""

    pygame.draw.rect(window, (0,255,0), (10,100,50,100))

"""

5.画多边形

polygon(Surface, color, pointlist, width=0)

"""

    pygame.draw.polygon(window, (0,255,255), [(300,50), (250,40),(100,50), (200,150)])

"""

6.画椭圆

def ellipse(Surface, color, Rect, width=0)

"""

    pygame.draw.ellipse(window, (123,200,210), (10,200,150,60))

"""

7.画弧线

def arc(Surface, color, Rect, start_angle, stop_angle, width=1)

start_angle: 0-2pi

stop_angle:

pi --- 180°  1° --- pi/180

59° = pi/180 * 59

"""

    pygame.draw.arc(window, (255,0,0), (200,400,100,100), pi/4+pi, pi*3/4+pi,3)

# 展示内容

    pygame.display.flip()

# 游戏循环

    while True:

        for eventin pygame.event.get():

            if event.type== pygame.QUIT:

                exit()

你可能感兴趣的:(2018-10-22)