Le more recent ScalaDoc peut-être un peu plus utile (en particulier, la nouvelle version de ScalaDoc vous permet d'afficher/masquer des éléments en béton afin que vous puissiez vous concentrer sur ce que vous devez mettre en œuvre).
Il convient de noter que vous ne devez définir un objet nommé ui qui étend l'interface utilisateur. Ce que le ScalaDoc dit est à la fois plus précis et plus flexible - "implémenter le champ d'interface utilisateur". En raison du Uniform Access Principle, vous êtes libre d'implémenter le champ ui comme val
ou object
(de même, vous pouvez utiliser un val
ou un var
pour implémenter un def
). Les seules contraintes (telles que présentées dans l'ScalaDoc comme val ui : UI
) sont que
- l'ui doit être une interface utilisateur, et
- la référence à l'interface doit être immuable
Par exemple:
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 = {}
}
}
la [SimpleApplet démo est ici] (https://github.com/scala/scala/blob/master/docs/examples/swing/SimpleApplet.scala) –
que Swing a déménagé dans un autre Locat GitHub ion, la démo est maintenant à https://github.com/scala/scala-swing/blob/master/docs/examples/swing/SimpleApplet.scala – Suma