【发布时间】:2012-09-17 16:40:36
【问题描述】:
如何获取 Scala Swing BorderPanel 上特定位置的子组件?我可以放置组件。在这种特殊情况下,我想检查 BorderPanel.Position.Centre 的组件。我也对,每个位置只能有一个子组件或空值:北、东等?
【问题讨论】:
标签: scala scala-swing
如何获取 Scala Swing BorderPanel 上特定位置的子组件?我可以放置组件。在这种特殊情况下,我想检查 BorderPanel.Position.Centre 的组件。我也对,每个位置只能有一个子组件或空值:北、东等?
【问题讨论】:
标签: scala scala-swing
嗯,layout 是一个从组件到位置的映射,所以以下工作(不确定是否有更简单的方法):
import scala.swing.SimpleSwingApplication
import scala.swing.MainFrame
import scala.swing.BorderPanel
import scala.swing.Label
object BorderLayoutTest extends SimpleSwingApplication {
def top = new MainFrame {
contents = new BorderPanel {
val label = new Label("hi")
import BorderPanel.Position._
layout(label) = Center
println("North: " + layout.find(_._2 == North)) //None
println("Center: "+ layout.find(_._2 == Center)) //Some( ... )
}
}
}
【讨论】: