Могу ли я отложить определенную часть программы? - PullRequest
1 голос
/ 27 июня 2011

Могу ли я задержать определенную часть программы, не задерживая весь поток? * 1001 например *

pcard3.setIcon(new ImageIcon("resources/images/cards/"+playerCard3+".gif"));

Могу ли я подождать 5 секунд, прежде чем установить значок JLabel?

Ответы [ 3 ]

6 голосов
/ 27 июня 2011

Я бы предложил использовать Swing Timers для таких задач (либо одноразовых, либо повторяющихся).

Timer timer = new Timer(5000, new ActionListener() {
    public void actionPerformed(ActionEvent e) {
        label.setIcon(...);
    }
});
timer.setRepeats(false);
timer.start();

 
 
4 голосов
/ 27 июня 2011

Это то, для чего SwingWorker.Для получения более подробной информации см. Javadoc .

1 голос
/ 27 июня 2011

Не можете ли вы визуализировать компоненты пользовательского интерфейса в отдельном потоке, так что если вы установите 5-секундную задержку, это не повлияет на остальную часть программы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...