Alerte notification

anonymekyra 1 Messages postés jeudi 1 octobre 2015Date d'inscription 1 octobre 2015 Dernière intervention - 1 oct. 2015 à 11:54 - Dernière réponse : KX 15679 Messages postés samedi 31 mai 2008Date d'inscriptionModérateurStatut 14 août 2018 Dernière intervention
- 3 oct. 2015 à 11:00
salut a tous, je suis nouveau en developpement et j'aurai besoin d'un coup de main, je viens de creer un tchat et j'aimerais etre avertir lorsque je recois des messages, une sorte de alerte sonnore
je suis nouveau sur ce forum et j'espere que que je m'y prends bien, merci d'avance pour vos aides et j'espere que vous me repondrai
Afficher la suite 

Votre réponse

2 réponses

vsleboss105 7 Messages postés mardi 29 septembre 2015Date d'inscription 7 avril 2017 Dernière intervention - 3 oct. 2015 à 10:12
0
Merci
Salut tu cherche une classe sonore fonctionnelle ?
Commenter la réponse de vsleboss105
KX 15679 Messages postés samedi 31 mai 2008Date d'inscriptionModérateurStatut 14 août 2018 Dernière intervention - Modifié par KX le 3/10/2015 à 11:35
0
Merci
Bonjour,

En Java standard tu as :
Toolkit.getDefaultToolkit().beep(); // import java.awt.Toolkit;

Sinon en fouillant un peu dans le Toolkit on peut récupérer les desktopProperties (spécifiques au système d'exploitation) qui peuvent contenir des sons.

import java.awt.Toolkit;
import java.lang.reflect.Field;
import java.util.Map;
import java.util.Map.Entry;
import java.util.TreeMap;

@SuppressWarnings("unchecked")
public static <E> Map<String, E> getSpecificDesktopProperties(String initializer, Class<E> clazz) throws Exception {
    Toolkit tk = Toolkit.getDefaultToolkit();
    tk.getDesktopProperty(initializer);
    Field fd = Toolkit.class.getDeclaredField("desktopProperties");
    fd.setAccessible(true);
    Map<String, Object> desktopProperties = (Map<String, Object>) fd.get(tk);
    Map<String, E> specific = new TreeMap<>();
    for (Entry<String, Object> entry : desktopProperties.entrySet()) {
        Object value = entry.getValue();
        if (value != null && clazz.isAssignableFrom(value.getClass()))
            specific.put(entry.getKey(), (E) value);
    }
    return specific;
}

Exemple pour lister les sons Windows et les écouter :

public static void main(String[] args) throws Exception {
    for (Entry<String, Runnable> e : getSpecificDesktopProperties("win.sound", Runnable.class).entrySet()) {
        System.out.println(e.getKey());
        e.getValue().run();
        Thread.sleep(1000);
    }
}

Et une fois que tu as trouvé le son que tu veux :

((Runnable) Toolkit.getDefaultToolkit().getDesktopProperty("win.sound.default")).run();
La confiance n'exclut pas le contrôle
Commenter la réponse de KX

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.