applet类的ScalaDoc在有关如何实际覆盖ui件和添加组件的细节上非常薄。它说:“客户端应实现ui字段。有关示例,请参见SimpleApplet演示。”


这个SimpleApplet演示在哪里?
除此以外,是否有人拥有使用Scala Applet类而不是直接使用JApplet类的简单源代码?


谢谢

最佳答案

more recent ScalaDoc可能会有所帮助(特别是新版本的ScalaDoc可让您显示/隐藏具体成员,以便您专注于必须实现的内容)。

应该注意的是,您不必定义名为ui的对象来扩展UI。 ScalaDoc所说的更准确,更灵活-“实现ui字段”。由于Uniform Access Principle,您可以自由地将ui字段实现为valobject(类似地,您可以使用valvar来实现def)。唯一的限制(在ScalaDoc中反映为val ui : UI)是


ui必须是一个UI,并且
对ui的引用必须是不可变的


例如:

class MainApplet extends Applet {
  val ui = new MainUI(Color.WHITE)

  class MainUI(backgroundColor: Color) extends UI {
     val mainPanel = new BoxPanel(Orientation.Vertical) {
        // different sort of swing components
        contents.append(new Button("HI"))
     }
     mainPanel.background = backgroundColor // no need for ugly _=
     contents = mainPanel

     def init(): Unit = {}
   }
}

10-05 21:11
查看更多