begin process at 2012 05 27 07:05:24
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Api

 > MANIPULER LA BARRE SYSTEME

MANIPULER LA BARRE SYSTEME


 Information sur la source

Note :
9 / 10 - par 5 personnes
9,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Api Classé sous :system, tray, systray, icone, systeme Niveau :Débutant Date de création :26/02/2006 Vu :20 900

Auteur : neodante

Ecrire un message privé
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (14)
Ajouter un commentaire et/ou une note


 Description

Cliquez pour voir la capture en taille normale
Il existe beaucoup de librairies externes qui vous permettent de jouer avec la barre système. Vous savez la barre qui affiche l'heure et de petites icones lorsqu'une application se rétrécie par exemple. Ici le code présentée n'est compatible qu'avec le JDK 6 (vous pouvez obtenir le SDK de la beta à cette adresse : http://java.sun.com/javase/6/) et représente donc l'utilisation standard de la feature du system tray dans Java.

Remarque : JAVA 6 obligatoire ! Version six comme le chiffre 6!

Source

  • import java.awt.AWTException;
  • import java.awt.Image;
  • import java.awt.MenuItem;
  • import java.awt.PopupMenu;
  • import java.awt.SystemTray;
  • import java.awt.Toolkit;
  • import java.awt.TrayIcon;
  • import java.awt.event.ActionEvent;
  • import java.awt.event.ActionListener;
  • public class Demo1 {
  • public static void main(String[] args) {
  • final TrayIcon trayIcon; // Notre icone dans la barre système
  • // On vérifie que le support de la feature du SystemTray est compatible avec l'OS hote
  • if (SystemTray.isSupported()) {
  • SystemTray tray = SystemTray.getSystemTray();
  • Image image = Toolkit.getDefaultToolkit().getImage("duke.gif"); // On récupère l'image qui nous servira d'icone
  • PopupMenu popup = new PopupMenu(); // Notre menu (clic droit sur l'icone systray)
  • MenuItem defaultItem = new MenuItem("Quitter");
  • defaultItem.addActionListener(new ActionListener() {
  • public void actionPerformed(ActionEvent e) {
  • System.exit(0);
  • }
  • });
  • popup.add(defaultItem);
  • trayIcon = new TrayIcon(image, "Java 6 Demo !", popup); // Création de l'icone systray
  • ActionListener actionListener = new ActionListener() {
  • public void actionPerformed(ActionEvent e) {
  • trayIcon.displayMessage("Java 6 new feature !",
  • "Le System Tray en action !",
  • TrayIcon.MessageType.INFO);
  • }
  • };
  • trayIcon.setImageAutoSize(true);
  • trayIcon.addActionListener(actionListener);
  • try {
  • tray.add(trayIcon);
  • } catch (AWTException e) {
  • e.printStackTrace();
  • }
  • } else {
  • // ...
  • }
  • }
  • }
import java.awt.AWTException;
import java.awt.Image;
import java.awt.MenuItem;
import java.awt.PopupMenu;
import java.awt.SystemTray;
import java.awt.Toolkit;
import java.awt.TrayIcon;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class Demo1 {

	public static void main(String[] args) {
		final TrayIcon trayIcon; // Notre icone dans la barre système
		
		// On vérifie que le support de la feature du SystemTray est compatible avec l'OS hote
		if (SystemTray.isSupported()) {

		    SystemTray tray = SystemTray.getSystemTray();
		    Image image = Toolkit.getDefaultToolkit().getImage("duke.gif"); // On récupère l'image qui nous servira d'icone
		            
		    PopupMenu popup = new PopupMenu(); // Notre menu (clic droit sur l'icone systray)
		    
		    MenuItem defaultItem = new MenuItem("Quitter");
		    defaultItem.addActionListener(new ActionListener() {
		        public void actionPerformed(ActionEvent e) {
		            System.exit(0);
		        }
		    });
		    popup.add(defaultItem);

		    trayIcon = new TrayIcon(image, "Java 6 Demo !", popup); // Création de l'icone systray

		    ActionListener actionListener = new ActionListener() {
		        public void actionPerformed(ActionEvent e) {
		            trayIcon.displayMessage("Java 6 new feature !", 
		                "Le System Tray en action !",
		                TrayIcon.MessageType.INFO);
		        }
		    };
		    trayIcon.setImageAutoSize(true);
		    trayIcon.addActionListener(actionListener);
		    
		    try {
		        tray.add(trayIcon);
		    } catch (AWTException e) {
		        e.printStackTrace();
		    }

		} else {
			// ...
		}
	}
}

 Conclusion

N'oubliez pas d'installer le JDK 6 avant d'exécuter ce programme ;-)


 Sources du même auteur

CONNEXION AU TRAVERS D'UN PROXY HTTP / FTP
Source avec Zip CONVERTISSEUR MYSQL VERS POSTGRESQL
Source avec Zip Source avec une capture TOUR DE HANOI GUI
Source avec Zip TUTORIAL VIDEO WEB SERVICE : LES FICHIERS
Source avec Zip VALIDATION XML AVEC XSD (XMLSCHEMA) POUR DOM ET SAX

 Sources de la même categorie

Source avec Zip UTILISATION DE JEXCELAPI POUR LIRE UN FICHIER EXCEL AVEC JAV... par Julien39
Source avec une capture AUTO FOLLOW/UNFOLLOW AVEC JTWITTER/OAUTHSIGNPOSTCLIENT ET SW... par GeroXXXX
Source avec Zip LOGICIEL MESSAGERIE par layeure
Source avec Zip Source avec une capture CRÉER DES GRAPHIQUES : UTILISATION DE JFREECHART par Julien39
EJB3-BEAN ENTITÉ : RELATIONS BIDIRECTIONNELLES par SoftDeath

 Sources en rapport avec celle ci

Source avec Zip TASK_KILLER par COUNDOULIBZO
Source avec Zip Source avec une capture API JTREE par Kimjoa
Source avec Zip Source avec une capture ZFS GESTION DU BOOTLOADER par 78.ultima
Source avec Zip CRYPTAGE" CHÉ" par hardr12
Source avec Zip Source avec une capture GESTION DE LA MEMOIRE PAR PARTITIONNEMENT DYNAMIQUE par y_program

Commentaires et avis

Commentaire de gmi19oj19 le 27/02/2006 09:09:58

Je savais comment faire via l'API JDIC dont est extraite cette nouvelle fonctionnalité et je remarque qu'il n'y a pas de changement énorme dans le code.

Merci pour l'exemple :)

Commentaire de Twinuts le 27/02/2006 16:13:39 administrateur CS

Sympas l'exemple,
même si je ne veux pas installer java 6 pour le moment (donc pas de teste possible) ça reste plus simple à faire qu'en jni :)

Commentaire de neodante le 27/02/2006 18:47:53 administrateur CS

Je vais mettre d'autres exemples de ce type, et en Java 6 il y en a beaucoup ;-)
++

Commentaire de lyesnet le 08/03/2006 11:18:01

bjr
j' ai teste votre exemple avec jdk1.6 mais ca marche pas.
A la compilation j'ai tout un rapprt d'erreurs qui me saute au yeux
please aide

Commentaire de neodante le 08/03/2006 11:44:54 administrateur CS

SI tu as téléchargé le JDK 6 Beta (pas les snapshots) il n'y a aucune raison que cela ne marche pas , c'est du standard.

Néanmoins, pourrais-tu au moins me donner le type de tes erreur ?

++

Commentaire de Stubbornman le 16/12/2006 19:12:09

Pour ma part, ca fonctionne très bien. Merci pour l'exemple.

Commentaire de hayeb967 le 16/06/2007 19:33:13

merci pour ce formation

Commentaire de docv266 le 22/08/2007 11:01:29

Merci, ça marche impec sauf que mon image est invible!
Ca peut être du à quoi?
Sinon c'est vraiment super...

Commentaire de cedalbi0 le 25/09/2007 11:30:50

docv266 : Tu dois placer une image "duke.gif" dans la racine du projet. J'avais la même erreur que toi (pas d'image dans la barre système) et là ça fonctionne à présent.

Merci pour l'exemple!

Commentaire de GillesWebmaster le 14/10/2007 18:59:11 10/10

tout simplement génial!!!

Commentaire de Nicolas___ le 09/06/2008 15:57:47

Le code source est vieux mais l'idée est toujours aussi sympathique :)

Merci

Commentaire de darthplagueis le 17/11/2008 20:29:30

alors moi j'ai le même probleme que docv266, mon icone a bien sa place mais il demeure invisible. Pourtant le fichier gif que j'utilise est autant à la racine du projet que dans tous les sous-répertoires...
j'ai essayé de transformer le fichier en réduisant la résolution, le nb de couleurs, rien à faire :/

PS: je travaille sous netbeans 6.1
si qqn a une idée ce serait gentil merci.

Commentaire de gouessej le 17/12/2008 13:36:02 5/10

C'est juste un copier-coller du code source commenté déjà disponible dans la documentation Java de la classe java.awt.SystemTray à peine complété.

Quant au problème de darthplagueis, si Netbeans a créé un paquetage dans lequel se trouve le fichier .java, il se peut qu'il faille adapter le chemin du fichier.

Commentaire de aminemmm le 17/09/2009 13:16:22 10/10

Supeeeeeeerb

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

réduire au system tray [ par balbinus ] Est-il possible en JAVA de réduire une application à une petite icône dans le system tray ?Si ce n'est pas possible en JAVA pur, y a-t-il des librairi System Tray Java 6 [ par JSR2K ] Bonjour,J'ai implemanté le code que l'on peut trouver ici  : http://www.javafr.com/codes/MANIPULER-BARRE-SYSTEME_36279.aspxdans mon programme constitu inconifier dans le System Tray [ par NickDejaPris ] Comment peut on mettre une fenetre dans le sytem Tray quand on l iconifie? svp While (1!=2) {System.out.println("Y' a comme un BUG .... je crois ??!!" System Tray [ par aforpien ] Bonsoir à tous, La fonction System Tray isSupported() me retourne false sous Linux Ubuntu. J'ai fais pas mal de recherches sur le net, c'est visiblem Gestion de l'affichage (icone Systray+rien dans la barre des taches) [ par adriBac ] Tout d'abord bonjour a tous ! Je suis entrain de réaliser une petite application JAVA sous NETBEANS, que j'aimerais passer tout simplement dans le Sy Mise a jour Jlist [ par dadaking ] Bonsoir, J'aimerais ajouter une icone a coté de chaque ligne de ma JList en fonction d'un certain paramètre (un boolean). J'arrive bien a insérer dans Interface Graphique [ par MTP85 ] Salut, je suis débutant en Java, je réalise une application qui fait affiche quelques informations de l'etat du modem : adresse IP, débit, software.. application socket vb.net envoie une image par le socket serveur [ par urhero ] BSR TOUT LE MONDE ? JE SUIS ENTRAIN DE FAIRE UNE APPLICATION SOCKET CLIEN SERVEUR ? BEN LE CLIEN PEUT ENVOYER DE TEXT CERCLE LIGNE ET M2ME UNE IMAGE ?


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,608 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales