[RESOLVIDO] Aparecer mensagem e sumir depois de m tempo

3 respostas
C

Eu preciso que a mensagem “Jogo salvo com sucesso.” apareça na tela quando apertar uma tecla e dure alguns segundos.

3 Respostas

rodriguesabner

Cara, eu uso uma API muito boa pra notificação, ela faz esse fadeout de notificação. O nome é: JNotify.

Ex de uso:

String msg = "Oi" 
 new NoticeWindow(NoticeType.SUCCESS_NOTIFICATION, msg, NoticeWindow.LONG_DELAY, NPosition.BOTTOM_RIGHT);

O NPosition é o lugar onde a notificação vai aparecer, se quer no centro, troca o BOTTOM_RIGHT pra CENTER.

LONG_DELAY é o tempo, o long é o mais demorado, tem o SHORT_DELAY que é mais curto.

NoticeType é a cor da notificação, eu não lembro agora quais são as opções, mas se vc der um Ctrl espaço ele mostra as opções lá na ide.

Villagram

Boa noite amigo.

Usar um framework é bem melhor, mas se estava procurando um código mais básico, ai está:

public class Teste1 {

public static void main(String[] args) {
    Timer timer = new Timer();
    JFrame frame = new JFrame("Jogo salvo!");
    frame.setSize(250, 100);
    frame.setUndecorated(true);
    Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
    Dimension d2 = new Dimension((d.width - frame.getWidth()) / 2, (d.height - frame.getHeight()) / 2);
    frame.setLocation(d2.width, d2.height);
    JLabel label = new JLabel();
    label.setSize(250, 100);
    label.setHorizontalAlignment(JLabel.CENTER);
    label.setText("Jogo salvo com sucesso!");
    frame.add(label);
    frame.setVisible(true);
    TimerTask task = new TimerTask() {
        @Override
        public void run() {
            frame.dispose();
            timer.cancel();
        }
    };
    timer.schedule(task, 5000L);
}

}

Essa tela abre e fecha em 5 segundos.

C

Obrigado por vocês me ajudarem!

Criado 9 de janeiro de 2019
Ultima resposta 10 de jan. de 2019
Respostas 3
Participantes 3