我正在使用Java编写数独游戏,我想按照以下方式为新游戏动作制作动画:
将拼图模型加载到JPanel中的代码是:
public void newSudoku(SudokuBoard puzzle){
this.puzzle = puzzle;
this.myimages = new ImageButton(this.puzzle);
for (int i=0;i<ROWS*COLUMNS;i++)
{
int row = i / ROWS;
int column = i % ROWS;
this.mylabels[row][column] = new JLabel(myimages.getImageMatrix()[row][column]);
this.add(this.mylabels[row][column]);
}
}
puzzle对象具有与图像对应的1到300的数字,因此在创建ImageButton myimages时使用它。 &#34;这&#34;是我自定义的JPanel,带有3 * 3 GridLayout。
它们是这样的,它在一次运行中完全加载,因此我无法为其设置动画。我不需要动画动画,这样可以降低任务的复杂性。
答案 0 :(得分:3)
我不需要动画动画,因此可以降低任务的复杂性。
因此,除了让所有组件都不可见外,一种方法是将所有组件添加到面板中。
然后当您单击“开始”按钮时,使用Swing Timer
开始动画处理。每次Timer事件触发时,您都可以看到下一个组件。当最后一个组件可见时,您将停止Timer
。
阅读How to Use Swing Timers上Swing教程中的部分,了解更多信息和示例。