ユーザーがクリックしてパネルに図形を描画する JPanel とボタンを備えたアプリケーションがあります。パネル内で形状を移動するだけでなく、形状に色を付けたり、サイズを変更したりできます。このようなアプリケーションに取り消しとやり直しを実装するにはどうすればよいでしょうか? すべてのアクションが実際に実装されている Actions クラスがあります。このクラスでは、各アクションは AbstractAction を拡張する独自のクラスです。私の Actions クラスは、基本的にネストされたクラスです。
たとえば、これは私の Actions クラスのクラスの 1 つです。
private class RandomAction extends AbstractAction {
private static final long serialVersionUID = 1L;
public NewAction(String text, ImageIcon icon, String desc){
super(text, icon);
putValue(SHORT_DESCRIPTION, desc);
}
public void actionPerformed(ActionEvent e) {
}
}
次に、ボタンを作成するときに行うことは次のとおりです。
randButton = new JButton(Actions.RandomAction);