gpt4 book ai didi

scala - 计时器示例

转载 作者:行者123 更新时间:2023-12-01 14:59:50 28 4
gpt4 key购买 nike

我有这段代码,试图构建一个计时器来减少 TextField 中的给定值(它应该包含完成一项工作所需的分钟数,但这些分钟数将被手动给出,然后被这个减少时钟):

import scala.swing._

class ScalaTimer(val delay: Int) {
val tmr: javax.swing.Timer = new javax.swing.Timer(delay, null)
def start() = tmr.start()
def stop() = tmr.stop()
}

object Test33 { //extends SimpleSwingApplication {
val timer = new ScalaTimer(50)
timer.tmr.start
//def top = new MainFrame {
def main(args: Array[String]) {
timer.tmr.addActionListener(Swing.ActionListener(e => {
println(timer.delay - 1)
}))
}
//}
}

我不明白为什么当我使用 main() 方法时它不打印任何东西,但当我使用 Frame 时它会打印当前给定的延迟:|

最佳答案

它不会用你的代码打印任何东西,因为你的应用程序在添加 ActionListener 后立即退出,并且在任何东西有机会触发它之前!

尝试添加

Thread.sleep(10000);

就在 main 方法结束之前,您会发现它会重复打印 49

它与 Frame 一起工作,因为这可以防止应用程序终止,直到 Frame 关闭。

关于scala - 计时器示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27150473/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com