package Ġexample Ċ Ċ import Ġjava . awt .* Ġ// Ġk tl int - disable Ġno - wildcard - imports Ċ import Ġjava . awt . geom . Rectangle 2 D Ċ import Ġjavax . swing .* Ġ// Ġk tl int - disable Ġno - wildcard - imports Ċ Ċ fun Ġmake UI (): ĠComponent Ġ{ ĊĠ Ġval Ġlayout Ġ= ĠSpring Layout () ĊĠ Ġval Ġpanel Ġ= ĠJPanel ( layout ) ĊĠ Ġpanel . border Ġ= ĠBorder Factory . create Line Border ( Color . GREEN , Ġ 1 0 ) ĊĠ Ġval Ġl 1 Ġ= ĠJLabel (" label : Ġ 5 %, Ġ 5 %, Ġ 9 0 %, Ġ 5 5 %", ĠSw ing Constants . CENTER ) ĊĠ Ġl 1 . is Opaque Ġ= Ġtrue ĊĠ Ġl 1 . background Ġ= ĠColor . OR ANGE ĊĠ Ġl 1 . border Ġ= ĠBorder Factory . create Line Border ( Color . RED ) ĊĠ Ġval Ġl 2 Ġ= ĠJButton (" button : Ġ 5 0 %, Ġ 6 5 %, Ġ 4 0 %, Ġ 3 0 % ") ĊĠ Ġset Scale And Add ( panel , Ġlayout , Ġl 1 , ĠRectangle 2 D . Float (. 0 5 f , Ġ. 0 5 f , Ġ. 9 0 f , Ġ. 5 5 f )) ĊĠ Ġset Scale And Add ( panel , Ġlayout , Ġl 2 , ĠRectangle 2 D . Float (. 5 0 f , Ġ. 6 5 f , Ġ. 4 0 f , Ġ. 3 0 f )) ĊĊĠ Ġreturn ĠJPanel ( Border Layout ()). also Ġ{ ĊĠĠĠ Ġit . add ( panel ) ĊĠĠĠ Ġit . preferred Size Ġ= ĠDimension ( 3 2 0 , Ġ 2 4 0 ) ĊĠ Ġ} Ċ } Ċ Ċ private Ġfun Ġset Scale And Add ( ĊĠ Ġparent : ĠContainer , ĊĠ Ġlayout : ĠSpring Layout , ĊĠ Ġchild : ĠComponent , ĊĠ Ġr : ĠRectangle 2 D . Float Ċ ) Ġ{ ĊĠ Ġval Ġpw Ġ= Ġlayout . get Constraint ( Spring Layout . WIDTH , Ġparent ) ĊĠ Ġval Ġph Ġ= Ġlayout . get Constraint ( Spring Layout . HEIGHT , Ġparent ) ĊĠ Ġval Ġc Ġ= Ġlayout . get Constraints ( child ) ĊĠ Ġc . x Ġ= ĠSpring . scale ( pw , Ġr . x ) ĊĠ Ġc . y Ġ= ĠSpring . scale ( ph , Ġr . y ) ĊĠ Ġc . width Ġ= ĠSpring . scale ( pw , Ġr . width ) ĊĠ Ġc . height Ġ= ĠSpring . scale ( ph , Ġr . height ) ĊĠ Ġparent . add ( child ) Ċ } Ċ Ċ fun Ġmain () Ġ{ ĊĠ ĠEvent Queue . invoke Later Ġ{ ĊĠĠĠ Ġrun Catch ing Ġ{ ĊĠĠĠĠĠ ĠUI Manager . set Look And Feel ( UI Manager . getSystem Look And Feel ClassName ()) ĊĠĠĠ Ġ}. on Failure Ġ{ ĊĠĠĠĠĠ Ġit . printStackTrace () ĊĠĠĠĠĠ ĠToolkit . getDefault Toolkit (). be ep () ĊĠĠĠ Ġ} ĊĠĠĠ ĠJ Frame (). apply Ġ{ ĊĠĠĠĠĠ Ġdefault Close Operation Ġ= ĠWindow Constants . EXIT _ ON _ CLOSE ĊĠĠĠĠĠ Ġcontent Pane . add ( make UI ()) ĊĠĠĠĠĠ Ġpack () ĊĠĠĠĠĠ Ġset Location Relative To ( null ) ĊĠĠĠĠĠ Ġis Visible Ġ= Ġtrue ĊĠĠĠ Ġ} ĊĠ Ġ} Ċ } Ċ