我有一个带有 JPanel 和用户单击以在面板上绘制形状的按钮的应用程序。您可以为形状着色和调整大小以及在面板中移动它们。我将如何为这样的应用程序实现撤消和重做?我有一个 Actions 类,其中所有操作都实际实现。在这个类中,每个动作都是它自己的类,它扩展了 AbstractAction。我的 Actions 类基本上是一个嵌套类。
例如,这是我的 Actions 课程中的课程之一:
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);