正方形の周長 #10
SquareParametersPaneを利用してSquarePerimeterを書くと、
import java.awt.BorderLayout; import javax.swing.JFrame; import javax.swing.SwingUtilities; public class SquarePerimeter implements Runnable { public void run() { JFrame f = new JFrame(); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.add(new SquareParametersPane(), BorderLayout.CENTER); f.pack(); f.setVisible(true); } public static void main(String[] args) { SwingUtilities.invokeLater(new SquarePerimeter()); } }
と、いたって簡単になる。大部分のコードを追い出したので当然ではある。
BorderLayoutが設定されたコンテナに制約文字列を与えずにadd()すると、
BorderLayout.CENTERが指定されたものとして扱われるので、
f.add(new SquareParametersPane());
の方がさらに簡略化できる。
言わずもがなだが、add先のコンテナはJFrameでなくそのコンテンツ区画であり、
明示的に取得したコンテンツ区画が必要なほど古いバージョンのJDKの場合は注意が必要。