0
스칼라의 스케이프에서 예제 6.9를보고 있는데, 프레임의 크기를 조절할 때 배경이 바뀌지 않으므로 배경 설정 방법이 적절하지 않습니다. 버전 2.10 작업에 대한 변경 사항을 업데이트 예제 코드입니다 (:스칼라에서 배경 설정하기 스윙
import scala.swing._
import scala.swing.event._
object circle extends SimpleSwingApplication {
def top = new MainFrame {
var mouseX = 0
var mouseY = 0
var mouseclicked = false
title = "Draw Circle"
val rect = new java.awt.Rectangle(350,250)
preferredSize = new Dimension(350,250)
val canvas = new Panel {
border = Swing.EmptyBorder(15, 15, 15, 15)
opaque = false
override def paintComponent(g: java.awt.Graphics2D) {
// g.setBackground(java.awt.Color.magenta)
g.setColor(java.awt.Color.magenta)
g.fill(rect)
g.setColor(java.awt.Color.blue)
if (mouseclicked) {
g.fillOval(mouseX-10, mouseY-10, 20, 20)
mouseclicked = false
}
}
listenTo(mouse.clicks)
reactions += {
case MouseClicked(_, p, _, 1, _) => {
mouseX = p.x
mouseY = p.y
mouseclicked = true
repaint
}
}
}
contents = canvas
}
}
내가 g.setBackground (와 g.setColor (...)와 g.fill (RECT)를 교체 시도
...)와 같은 위의 주석, 그리고 컴파일하지만 작동하지 않습니다.
사람이 사전에?
덕분에이 작업을 수행하는 올바른 방법을 제안 할 수 있습니다.