pygame.time--监控时间的模块

 

import pygame

pygame.init()
screen = pygame.display.set_mode((96, 60))
pygame.display.set_caption("时间模块")

t=pygame.time.get_ticks()  #获取以毫秒为单位的时间
#返回自 pygame_init() 调用以来的毫秒数。在pygame初始化之前,这将始终为0

t1=pygame.time.wait(5000)  #暂停5000毫秒
#返回实际暂停的毫秒数
#此函数会暂停进程以与其他程序共享处理器

t1=pygame.time.delay(5000)  #暂停5000毫秒
#此功能将使用处理器
#返回实际暂停的毫秒数

print(t1)

while True:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            exit()
    pygame.display.update()

 


import pygame

pygame.init()
screen = pygame.display.set_mode((96, 60))
pygame.display.set_caption("时间模块")

pygame.time.set_timer(pygame.MOUSEBUTTONDOWN, 2000) #以一定的时间间隔自动产生某事件
#每个2000毫秒自动产生一次鼠标按下事件
#参数1:事件
#参数2:间隔时间
#要禁用事件的计时器,请将milliseconds参数设置为0
#每种事件类型都可以附加一个单独的计时器

i=0
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
exit()
if event.type == pygame.MOUSEBUTTONDOWN:
print(i,'鼠标键按下了', event)
i+=1

pygame.display.update()
#运行此程序,你会看到,每个2000毫秒自动产生一次鼠标按下事件



 

 

 

import pygame

pygame.init()
screen = pygame.display.set_mode((96, 60))
pygame.display.set_caption("时间模块")

clock = pygame.time.Clock()  # 创建时钟对象
i=0
while True:
    t=clock.tick(60)  # 每秒最多循环60次
    #每次计算上次到此时的时间,如果低于时间间隔,会等待
    #应该每帧调用一次此方法
    #返回值:自上一次调用以来经过的毫秒数
    #请注意,此函数使用SDL_Delay函数,该函数在每个平台上都不准确,但不会占用太多CPU

    print(i,t)
    i+=1
    x = 0
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            exit()
    for ii in range(3000000):
        x=x+1
    pygame.display.update()

 

import pygame

pygame.init()
screen = pygame.display.set_mode((96, 60))
pygame.display.set_caption("时间模块")

clock = pygame.time.Clock()
i=0
while True:
    t=clock.tick_busy_loop(60)  # 每秒最多循环60次
    #每次计算上次到此时的时间,如果低于时间间隔,会等待
    #应该每帧调用一次此方法
    #返回值:自上一次调用以来经过的毫秒数
    #请注意,此函数使用 pygame.time.delay,在繁忙的循环中使用大量CPU以确保时间更准确

    print(i,t)
    i+=1
    x = 0
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            exit()
    for ii in range(3000000):
        x=x+1
    pygame.display.update()

 

q=clock.get_time()  #返回前两次tick()或tick_busy_loop()之间传递的毫秒数

 

q=clock.get_rawtime() #返回前两次tick()或tick_busy_loop()之间传递的毫秒数
    #类似于 Clock.get_time(),但不包括  Clock.tick() 延迟限制帧速率时使用的任何时间

 

 

q=clock.get_fps()  #返回实际时钟帧率
    #以每秒帧数为单位。它是通过平均最后十次调用来计算的

 

 

 

 

posted @ 2020-06-13 06:20  天子骄龙  阅读(3115)  评论(0编辑  收藏  举报