我正在学习scala.swing,我很好奇,如果我可以重写像textarea这样的现有组件的paint方法,事实证明我可以,但后来我认为, m做错了事:覆盖scala swing中textarea的paint方法
var rectangles = List[Rectangles]()
val textarea = new TextArea(){
override def paint(g:Graphics2D){
super.paint(g)
rectangles.foreach{g.draw}
}
}
这段代码显示我有一个矩形和一个textarea的列表。这不应该是有道理的。我只是好奇,如果我能设法在textarea上绘制矩形。
当调试/添加打印它清楚地表明我,它贯穿我重写paint方法,但它不会显示我的矩形
我是简单地使用Graphics2D对象错误或那为什么我不能看到我的矩形?
感谢提前任何帮助
您绝对可以按照提及的方式使用foreach。 PLZ添加更多信息。 (例如矩形列表是空的?) –
矩形不是空的 - >它是否工作似乎只取决于我使用foreach的方式 – Julian