Existe uma maneira de exibir um formulário personalizado em Java que funciona semelhante ao TrayIcon.displayMessage ()?

StackOverflow https://stackoverflow.com/questions/1055364

Pergunta

Usando Java há de qualquer maneira para exibir um formulário personalizado / imagem que se comporta semelhante a TrayIcon.displayMessage () função em que ele exibe apenas acima da bandeja do sistema por um tempo depois desaparece?

Eu também estou procurando uma maneira de exibir várias notificações ao mesmo tempo, tendo-lhes exibir um acima do outro.

Se não, como faço para encontrar a localização de pixel para o canto inferior esquerdo, logo acima da bandeja do sistema?

Foi útil?

Solução

Eu não acho que há um atalho para desenho quadros que atuam apenas como os TrayIcons padrão (com o botão x no canto) que o apoio empilhamento semelhante às notificações Mac Growl.
você provavelmente terá de implementá-lo.
Descobri que empilhamento mensagens como que é um completo desperdício de tempo que o usuário não vai prestar atenção a eles -. A melhor localização para estes é na área de status da aplicação em um menu pop-up simples
Você pode usar java.awt.GraphicsEnvironment. getLocalGraphicsEnvironment () para obter informações sobre o ambiente de trabalho, que contém 'getMaximumWindowBounds ()', que cuida de coisas como a posição da barra de tarefas.
Você pode usar uma subclasse de um javax.swing.JWindow para criar uma janela sem uma borda que pode ser posicionado na área de trabalho em relação ao canto inferior direito. Isso nem sempre vai funcionar como o ícone da bandeja padrão, como a localização do gerador de ícone pode estar em outro lugar que não seja. Você pode adicionar um botão que atua como o 'x' botão de uma janela desktop padrão -. Mas vai ser dependente plataforma
Eu uso janelas quadradas que se acumulam a partir do canto superior direito, se eu estou usando LTR, e parece funcionar bem.

Outras dicas

Go confira Java GNOME . Ele tem ligações Java para GTK, incluindo um de status ícone para a bandeja, e eventos de notificação.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top