swing.scala
来自「JAVA 语言的函数式编程扩展」· SCALA 代码 · 共 41 行
SCALA
41 行
package scala.swingimport java.awt.Dimensionimport javax.swing._import javax.swing.event._object Swing { protected[swing] def ifNull[A](o: Object, a: A): A = if(o eq null) a else o.asInstanceOf[A] protected[swing] def toOption[A](o: Object): Option[A] = if(o eq null) None else Some(o.asInstanceOf[A]) protected[swing] def toNull[A>:Null<:AnyRef](a: Option[A]): A = if(a == None) null else a.get implicit def block2Runnable(block: =>Unit): Runnable = new Runnable { override def run = block } def ChangeListener(f: ChangeEvent => Unit) = new ChangeListener { def stateChanged(e: ChangeEvent) { f(e) } } def Box(min: Dimension, pref: Dimension, max: Dimension) = new Component { override lazy val peer = new javax.swing.Box.Filler(min, pref, max) } def HGlue = new Component { override lazy val peer = javax.swing.Box.createHorizontalGlue.asInstanceOf[JComponent] } def VGlue = new Component { override lazy val peer = javax.swing.Box.createVerticalGlue.asInstanceOf[JComponent] } def Glue = new Component { override lazy val peer = javax.swing.Box.createGlue.asInstanceOf[JComponent] } def RigidBox(dim: Dimension) = new Component { override lazy val peer = javax.swing.Box.createRigidArea(dim).asInstanceOf[JComponent] } def HStrut(width: Int) = new Component { override lazy val peer = javax.swing.Box.createHorizontalStrut(width).asInstanceOf[JComponent] } def VStrut(height: Int) = new Component { override lazy val peer = javax.swing.Box.createVerticalStrut(height).asInstanceOf[JComponent] }}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?