Fórum Exibir notificação estilo Toaster #582097

04/06/2017

0

Estou desenvolvendo uma aplicação e preciso exibir uma notificação para o usuário. Preciso que essa notificação seja exibida no canto inferior direito da tela e que fique acima de todas as janelas que o usuário possa ter aberto (inclusive de outros programas). Estou usando o com.nitido.utils.toaster.Toaster para fazer isso, mas não consegui encontrar uma função para torna-lo exibível acima de todas as outras janelas. Eu imagino que isso seja possível de se fazer pois vejo muitos programas instalados no Windows que manipula as notificações do próprio sistema operacional. Tenho o WhatsApp instalado no Windows e quando chega uma mensagem ele me notifica utilizando esse "notificador" do Windows (Exibe uma quadro com a notificação no canto inferior direito da tela). Seria algo mais ou menos assim que eu gostaria de fazer. Tem como o meu aplicativo manipular esses sistema de notificação do Windows?
Teofilo Macedo

Teofilo Macedo

Responder

Posts

05/06/2017

Eduardo Chaves

Olá Teofilo, bom dia!

Você pode fazer isso utilizando as classes SystemTray e TrayIcon

segue um exemplo:


import java.awt.*;
import java.awt.TrayIcon.MessageType;

public class TrayIconDemo {

public static void main(String[] args) throws AWTException, java.net.MalformedURLException {
if (SystemTray.isSupported()) {
TrayIconDemo td = new TrayIconDemo();
td.displayTray();
} else {
System.err.println("System tray not supported!");
}
}

public void displayTray() throws AWTException, java.net.MalformedURLException {
SystemTray tray = SystemTray.getSystemTray();

Image image = Toolkit.getToolkit().createImage("icon.png");
TrayIcon trayIcon = new TrayIcon(image, "Tray Demo");
trayIcon.setImageAutoSize(true);
trayIcon.setToolTip("System tray icon demo");
tray.add(trayIcon);

//Acima está toda a configuração do trayIcon (ícones que é exibido perto do relógio), e a última linha utiliza o trayIcon criado para disparar sua notificação.
trayIcon.displayMessage("Titulo da Notificação", "Conteúdo da notificação", MessageType.INFO);
//O útilmo parametro é a imagem a ser exibida.
}
}


Espero que tenha ajudado, um abraço.
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar