先週の検索では、これを行う方法を理解しようとするための実用的なヘルプが表示されませんでした. ユーザーがバックスペースを押すと、ゲームが保存されます。上部に「保存中..」という小さなボックスが表示されるように設定し、それを約2秒間そのままにしておきます。このコードでボタンが押されている間、それを表示させることができます:
if (key.save) {
font = new Font(null, 0, 16);
g.setFont(font);
g.setColor(Color.DARK_GRAY);
g.fillRect(getWidth() / 2 - 40, -1, 80, 35);
g.setColor(Color.BLACK);
g.drawRect(getWidth() / 2 - 40, -1, 80, 35);
g.setColor(Color.white);
g.drawString("Saving..", getWidth() / 2 - 30, 22);
}
ただし、このコードは機能しません。上部にボックスが表示されません。
if (key.save) {
ActionListener action = new ActionListener() {
public void actionPerformed(ActionEvent e) {
Font font = new Font(null, 0, 16);
g.setFont(font);
g.setColor(Color.DARK_GRAY);
g.fillRect(getWidth() / 2 - 40, -1, 80, 35);
g.setColor(Color.BLACK);
g.drawRect(getWidth() / 2 - 40, -1, 80, 35);
g.setColor(Color.white);
g.drawString("Saving..", getWidth() / 2 - 30, 22);
}
};
timer = new Timer(0, action);
timer.start();
}