Поиск по сайту по этому вопросу, и вы поймете, почему Thread.sleep(...)
не подходит при вызове потока событий Swing. Вы также увидите, что вместо этого вы должны использовать Swing Timer.
Например, пожалуйста, взгляните на мой код в моем ответе here.
В вашей ситуации, предполагая массив ImageIcons, вы могли бы попробовать что-то вроде:
new Timer(timerDelay, new ActionListener() {
private int iconIndex = 0;
public void actionPerformed(ActionEvent evt) {
if (iconIndex < iconArray.length) {
label.setIcon(iconArray[iconIndex]);
iconIndex++;
} else {
((Timer)evt.getSource()).stop(); // stop the timer
}
}
}).start();
Для окровавленных деталей, пожалуйста, ознакомьтесь с Swing Timer Tutorial.
Редактировать
Вы заявляете в комментарии:
я не имею массив ImageIcons, у меня есть 13 изображений и кнопки, я хочу, чтобы сделать внешнюю функцию (Out события Button), который отображает в нем 13 изображений каждую секунду, накладывая их один поверх другого (в том же месте).
Нет проблем - то сделать массив Icon или ArrayList<Icon>
и вещи вы ImageIcons там. Независимо от того, мой код выше не предназначен для резки и вставки, но для того, чтобы дать вам общее представление о форме решения, поскольку идеи могут быть распространены на вашу проблему. Теперь вам нужно принять эту идею, а также то, что вы можете извлечь из учебника таймера Swing Timer (снова можно найти ссылку here) и попытайтесь написать код для своего собственного решения. Также, пожалуйста, ищите этот сайт по теме Swing Timer и анимации, потому что этот вопрос задают лот. Но обратите внимание, что при поиске не смотрите на точные дубликаты вашего вопроса, так как этого обычно не существует, а скорее вопросов, связанных с похожими понятиями, а затем одолжить концепции, представленные в их решениях.
Удачи в ваших усилиях!
* «Любая помощь?» * Любые признаки усилий? 1) Чтобы получить более эффективную помощь, отправьте сообщение [MCTaRE] (http://stackoverflow.com/help/mcve) (минимальный полный протестированный и читаемый пример). 2) Одним из способов получения изображения (ов) для примера является горячая ссылка на изображения, видимые в [этом ответе] (http://stackoverflow.com/a/19209651/418556). –