我使用scala.Swing
创建了以下EditorPaneimport scala.swing.{Font, Color, EditorPane}
val textArea = new EditorPane() {
font = new Font("monospaced", java.awt.Font.PLAIN , 20 )
background = Color.darkGray
foreground = Color.magenta
size = new java.awt.Dimension(30,50)
}
运行上面的代码会生成错误:
value size_= is not a member of scala.swing.EditorPane
在scala.swing EditorPane API(http://www.scala-lang.org/api/2.10.4/index.html#scala.swing.EditorPane)中,它将大小称为java.awt.Dimension
所以我无法理解为什么我的代码出错了。我也试过size.setSize(30,50)
,它编译但是EditorPane只有一行,这意味着没有正确设置大小。
这里有什么问题?
ps:我有最新的Scala版本。
答案 0 :(得分:0)
EditorPane
继承了UIElement
的所有组件。
UIElement
提供了相关的setter方法,如:
minimumSize_=(x: Dimension)
maximumSize_=(x: Dimension)
preferredSize_=(x: Dimension)
还有一个size
方法,但没有setter。这解释了你的错误。
我个人的解释:
最后,Layoutmanager将处理所有组件的大小,您不应手动干扰。您可以用最小,最大和首选尺寸表达您的意愿。
您可以直接设置大小的唯一类是窗口和框架。
new MainFrame() { size = new Dimension(30,50) }