📜  如何在 Python3 中使用 Arcade 在屏幕上显示计时器?

📅  最后修改于: 2022-05-13 01:55:09.037000             🧑  作者: Mango

如何在 Python3 中使用 Arcade 在屏幕上显示计时器?

先决条件:街机图书馆

Arcade 是一个现代框架,用于制作 2D 视频游戏。在这篇文章中,您将学习如何使用Python的街机模块显示屏幕计时器。在屏幕上显示计时器并不难,只需按照以下步骤操作:-

第一步:首先导入Python的arcade模块

Python3
import arcade


Python3
WIDTH = 800
HEIGHT = 600
TITLE = "Timer"


Python3
class MyTimer(arcade.Window):
  
    def setup(self):
        arcade.set_background_color(arcade.color.WHITE)
        self.total_time = 0.0


Python3
def on_draw(self):
  
    # Start the render.
    arcade.start_render()
  
    # Calculate minutes
    minutes = int(self.total_time) // 60
  
    # Calculate seconds by using a modulus
    seconds = int(self.total_time) % 60
  
    # Figure out your output
    output = f"Time: {minutes:02d}:{seconds:02d}"
  
    # Output the timer text.
    arcade.draw_text(output, 300, 300, arcade.color.BOTTLE_GREEN, 45)


Python3
def on_update(self, delta_time):
    self.total_time += delta_time


Python3
def main():
    window = MyTimer()
    window.setup()
    arcade.run()
  
main()


Python3
#import module
import arcade
  
# screen parameters
SCREEN_WIDTH = 800
SCREEN_HEIGHT = 600
SCREEN_TITLE = "Timer "
  
# define class
  
  
class MyTimer(arcade.Window):
  
    def setup(self):
        arcade.set_background_color(arcade.color.WHITE)
        self.total_time = 0.0
  
    def on_draw(self):
  
        # Start the render.
        arcade.start_render()
  
        # Calculate minutes
        minutes = int(self.total_time) // 60
  
        # Calculate seconds by using a modulus
        seconds = int(self.total_time) % 60
  
        # Figure out your output
        output = f"Time: {minutes:02d}:{seconds:02d}"
  
        # Output the timer text.
        arcade.draw_text(output, 300, 300, arcade.color.BOTTLE_GREEN, 45)
  
    # update
    def on_update(self, delta_time):
        self.total_time += delta_time
  
# main function
def main():
    window = MyTimer()
    window.setup()
    arcade.run()
  
  
# call main function
main()


步骤 2:定义输出屏幕所需的参数。

蟒蛇3

WIDTH = 800
HEIGHT = 600
TITLE = "Timer"

第三步:定义一个类 MYTimer 并在该类下设置背景颜色和开始时间。

蟒蛇3

class MyTimer(arcade.Window):
  
    def setup(self):
        arcade.set_background_color(arcade.color.WHITE)
        self.total_time = 0.0

第 4 步:在 MyTimer 类下,定义一个函数来计算分钟和秒。

蟒蛇3

def on_draw(self):
  
    # Start the render.
    arcade.start_render()
  
    # Calculate minutes
    minutes = int(self.total_time) // 60
  
    # Calculate seconds by using a modulus
    seconds = int(self.total_time) % 60
  
    # Figure out your output
    output = f"Time: {minutes:02d}:{seconds:02d}"
  
    # Output the timer text.
    arcade.draw_text(output, 300, 300, arcade.color.BOTTLE_GREEN, 45)

第 5 步:现在,定义一个 on_update函数以随着分钟和秒的增加而更新时间。

蟒蛇3

def on_update(self, delta_time):
    self.total_time += delta_time

第 6 步:最后也是最重要的一步是定义 main() 并在最后调用它。

蟒蛇3

def main():
    window = MyTimer()
    window.setup()
    arcade.run()
  
main()

完整代码

蟒蛇3

#import module
import arcade
  
# screen parameters
SCREEN_WIDTH = 800
SCREEN_HEIGHT = 600
SCREEN_TITLE = "Timer "
  
# define class
  
  
class MyTimer(arcade.Window):
  
    def setup(self):
        arcade.set_background_color(arcade.color.WHITE)
        self.total_time = 0.0
  
    def on_draw(self):
  
        # Start the render.
        arcade.start_render()
  
        # Calculate minutes
        minutes = int(self.total_time) // 60
  
        # Calculate seconds by using a modulus
        seconds = int(self.total_time) % 60
  
        # Figure out your output
        output = f"Time: {minutes:02d}:{seconds:02d}"
  
        # Output the timer text.
        arcade.draw_text(output, 300, 300, arcade.color.BOTTLE_GREEN, 45)
  
    # update
    def on_update(self, delta_time):
        self.total_time += delta_time
  
# main function
def main():
    window = MyTimer()
    window.setup()
    arcade.run()
  
  
# call main function
main()

输出: