zoukankan      html  css  js  c++  java
  • 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()  #返回实际时钟帧率
        #以每秒帧数为单位。它是通过平均最后十次调用来计算的

  • 相关阅读:
    Samba 4.0 RC3 发布
    SymmetricDS 3.1.7 发布,数据同步和复制
    Express.js 3.0 发布,Node.js 的高性能封装
    GIFLIB 5.0.1 发布,C语言的GIF处理库
    jQuery UI 1.9.1 发布
    SVN Access Manager 0.5.5.14 发布 SVN 管理工具
    DynamicReports 3.0.3 发布 Java 报表工具
    HttpComponents HttpClient 4.2.2 GA 发布
    AppCan 2.0 正式发布,推移动应用云服务
    Ruby 2.0 的新功能已经冻结
  • 原文地址:https://www.cnblogs.com/liming19680104/p/13111508.html
Copyright © 2011-2022 走看看