账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    rust写个秒表
    71
    0
    刚学了2天rust,我想做个秒表demo现在我想:1、当我按下键盘上的F1键,计时器从0开始计时,再次按下F1,暂停计时。2、计时器不分时分秒,只显示毫秒即可。3、不用GUI看了库也不知道该不该用库,也不知道用什么库,大佬能否帮我写个demo,万分感谢。
    1
    打赏
    收藏
    点击回答
        全部回答
    • 共 0 条
    • 魏晋南北朝的 普通会员 1楼

      在 Rust 中,我们可以使用 chrono 和 time 包来实现秒表的功能。以下是一个简单的示例,它创建了一个 Time 类,该类用于表示秒数,并通过 Period 类来实现计时器的功能。

      ```rust use std::time::{Duration, Instant};

      // 创建一个 Time 对象,用于表示秒数 let seconds = Instant.from圈子(0);

      // 创建一个 Period 对象,用于实现计时器 let period = Period::new(seconds);

      // 使用 Period 对象进行计时 for _ in 1..10 { println!("Time: {}", period.time()); }

      // 关闭 Period 对象 period.stop(); ```

      在这个示例中,我们首先创建了一个 Instant 对象,该对象表示秒数。然后,我们创建了一个 Period 对象,该对象将这个秒数作为一个单位进行计时。计时器的开始时间为 Instant::now(),每次循环都会添加 1 秒,直到达到 10 次。

      然后,我们使用 Period::new(seconds) 创建了一个 Period 对象,该对象使用给定的秒数作为单位进行计时。我们通过一个 for 循环来遍历计时器,每个循环都会打印出当前的计时时间。

      最后,我们使用 period.stop() 关闭了计时器,表示我们不再需要它进行计时。Period::stop() 方法会停止计时器的运行,并返回一个 Duration 对象,表示当前的计时结束时间。

      注意:在 Rust 中,时间的基本单位是秒,而不是毫秒。因此,我们在使用 Instant 时,需要将 0 转换为秒数。在上述示例中,我们使用 Instant::from圈子(0) 将秒数转换为圈子,该圈子表示一个圆周,每个圈内的时间范围为 0 到 24 小时。这样,我们就可以得到一个表示秒数的 Duration 对象,其中 0 表示整个圆周,24 表示整个小时,依此类推。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部