相対パスを使用して画像パネルからいくつかの画像にアクセスしようとしています。Eclipseプロジェクトには、画像という名前のフォルダーがあります。これが私のコードです:
val top = new MainFrame {
title = "Predator and Prey Agent simulation"
val buttonExit = new Button {
text = "Exit"
action = Action("Exit") {
WorldActor.run(false)
closer
}
}
val buttonStart = new Button {
text = "Start"
action = Action("Start") {
switchPanes()
}
}
val s = new Dimension(500, 700)
contents = new ImagePanel(0, 1) {
for (i <- 0 until 5){
contents+= new Label("")
}
contents += buttonStart
contents += buttonExit
contents+= new Label("")
minimumSize = s
maximumSize = s
preferredSize = s
imagePath = ("\\PredatorPrey\\images\\gnp-canadian-lynx-kitten.jpg")
}
}
上記のコードを実行するたびに、javax.imageio.IIOExceptionが発生します。imapePanelクラスは次のとおりです。
case class ImagePanel(rows0: Int, cols0: Int) extends GridPanel(rows0, cols0) {
private var _imagePath = ""
private var bufferedImage: BufferedImage = null
def imagePath = _imagePath
def imagePath_=(value: String) {
_imagePath = value
bufferedImage = ImageIO.read(new File(_imagePath))
}
override def paintComponent(g: Graphics2D) = {
if (null != bufferedImage) g.drawImage(bufferedImage, 0, 0, null)
}
}
誰かがそのパスを修正する方法を知っていますか?