正方形の周長 #28
Squareの情報を表示するコンポーネントだけでなく、
Squareに値を設定するコンポーネントも加えてみる。
import java.awt.Dimension; import java.awt.FlowLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.BorderFactory; import javax.swing.JApplet; import javax.swing.JButton; import javax.swing.JLabel; public class SquareApplet extends JApplet { public SquareApplet() { ...snip add(newLabel(s)); add(newButton(s)); s.setSide(0); } ...snip private JButton newButton(final Square s) { JButton b = new JButton(SquareParametersRes.get("gui.increment.label")); b.setBorder(BorderFactory.createTitledBorder(SquareParametersRes.get("gui.perimeter.label"))); b.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { s.setPerimeter(s.getPerimeter() + 1); } }); return b; } }