import tfd.scala.squib._ import tfd.scala.squib.event._ import javax.swing.{JButton, WindowConstants} val defaultButtonText = "Please Press Me" lazy val pressMeButton = button.id("pressMe") frame( 'title -> "Press Me", 'visible -> true, 'defaultCloseOperation -> WindowConstants.DISPOSE_ON_CLOSE, contents( button("pressMe", 'text->defaultButtonText, actionPerformed { pressMeButton.setText("Ouch !!!!") }, mouseEntered { pressMeButton.setText("Don't Press Me") }, mouseExited { pressMeButton.setText(defaultButtonText) } ) ) ).pack