Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it L'avatar di mist3r0
    Registrato dal
    Mar 2007
    Messaggi
    103

    Java Ridurre Le finestre nella tray-bar

    Ciao Ragazzi, volevo chiedervi un aiuto.

    Ho realizzato un software e ora vorrei quando clicco sull'icona del frame, Per ridurre la finestra ad icona al posto di ridurre ad icone poter portare questo software nella tray-bar insieme alle altre icone vicino all'orologgio.

    Come posso fare? :master:

    Potete aiutarmi?

    Grazie aspetto vostre notizie!
    M|$T3R®

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: Java Ridurre Le finestre nella tray-bar

    Originariamente inviato da mist3r0
    Ho realizzato un software e ora vorrei quando clicco sull'icona del frame, Per ridurre la finestra ad icona al posto di ridurre ad icone poter portare questo software nella tray-bar insieme alle altre icone vicino all'orologgio.
    Dire che "la finestra si riduce ad icona nella tray-bar" è improprio, in quanto tecnicamente le finestre non hanno nulla a che fare direttamente con le icone nella tray-bar.
    Non esiste alcun metodo/comando che dice ad una finestra: iconizzati nella tray-bar. Semmai esistono delle API dedicate alla visualizzazione/gestione di una o più icone nella tray-bar.

    Ed è quindi il programmatore che deve fare in modo da "sentire" quando la finestra viene chiusa o minimizzata e a quel punto nasconderla e aggiungere una icona nella tray-bar.

    A partire da Java 6 in poi vedere la classe java.awt.SystemTray. Per versioni precedenti, vedere JDIC.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it L'avatar di mist3r0
    Registrato dal
    Mar 2007
    Messaggi
    103
    Sono riuscito a mettere l'icona sulla tray-bar!

    Ma ho un altro piccolo problema, come faccio dopo averla messa nella tray-bar a farla scomparire dalla barra centrale di windows dove ogni applicazione viene riportata?

    :master:
    M|$T3R®

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Ecco un esempio completo:

    codice:
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import javax.imageio.*;
    
    public class TrayIconTestFrame extends JFrame
    {
        private SystemTray sysTray;
        private TrayIcon trayIcon;
    
        public TrayIconTestFrame (Image iconImg)
        {
            super ("Tray icon test");
    
            setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
            setSize (300, 300);
    
            sysTray = SystemTray.getSystemTray ();
            trayIcon = new TrayIcon (iconImg, "Prova icona nella tray-bar");
    
            addWindowListener (new WindowAdapter ()
            {
                public void windowIconified (WindowEvent we)
                {
                    setVisible (false);
    
                    try {
                        sysTray.add (trayIcon);
                    } catch (Exception e) { }
                }
            });
    
            trayIcon.addActionListener (new ActionListener ()
            {
                public void actionPerformed (ActionEvent ae)
                {
                    setVisible (true);
                    setState (NORMAL);
                    sysTray.remove (trayIcon);
                }
            });
        }
    
        public static void main (String[] args)
        {
            try
            {
                final Image iconImg = ImageIO.read (TrayIconTestFrame.class.getResource ("trayicon.gif"));
    
                SwingUtilities.invokeLater (new Runnable ()
                {
                    public void run ()
                    {
                        TrayIconTestFrame f = new TrayIconTestFrame (iconImg);
                        f.setVisible (true);
                    }
                });
            }
            catch (Exception e)
            {
                System.out.println (e);
            }
        }
    }
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.