Alerte notification

Messages postés
1
Date d'inscription
jeudi 1 octobre 2015
Dernière intervention
1 octobre 2015
- - Dernière réponse : KX
Messages postés
15868
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
16 décembre 2018
- 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

Messages postés
9
Date d'inscription
mardi 29 septembre 2015
Dernière intervention
28 octobre 2018
0
Merci
Salut tu cherche une classe sonore fonctionnelle ?
Commenter la réponse de vsleboss105
Messages postés
15868
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
16 décembre 2018
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.