Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    Finestra in prmo piano

    Salve a tutti,

    ecco il mio problema:

    ho una finestra principale con un menu, alcune voci del menu fanno aprire altre finestre pià piccole.
    Vorrei che queste finestre, restino sempre in primo piano, fino a che nn vengone chiuse.

    Mentre adesso si apre la finestra secondaria, ma se clicclo sulla finestra principale la secondaria passa in secondo piano.

    Grazie
    Omme se nasce e brigante se more
    Ma fino all’ultimo avimma sparà
    E si murimm menate nu sciore
    E na preghiera pè sta libertà

  2. #2
    interessa anche a me!!

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2004
    Messaggi
    76
    Velocemente:
    tuoFrame.setAlwaysOnTop(true);

    la controindicazione è che resta si in primo piano, ma se clicchi sui menu o button del frame di sotto, riesci comunque ad eseguire le azioni!
    Per una corretta gestione, devi usare i WindowListener!

  4. #4
    A me basta che l'utente tenga a mente la necessità di eseguire l'operazione..per ora mi basta.

  5. #5
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Originariamente inviato da krisc1
    Per una corretta gestione, devi usare i WindowListener!
    Direi che per una corretta gestione bisogna usare le JDialog per le "finestre" che devono rimanere in primo piano. In questo modo il bloccaggio del Frame principale è garantito dal metodo setModal().


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  6. #6
    Ho avuto esperienze infelici con le JDialog...sicuramente imputabili a miei errori ma mi hanno spesso provocato problemi in fase di "rendering" (sto sviluppando un software CAD)

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2004
    Messaggi
    76
    Visto che tra qualche riga di codice... mi servirà pure a me.... ecco la soluzione:

    final JFrame framePrimoPiano=new JFrame(); // final per potergli accedere dal windowListener
    framePrimoPiano.setAlwaysOnTop(true);
    framePrimoPiano.setSize(new Dimension (300,200));
    framePrimoPiano.setVisible(true);

    // imposto il WindowListener come classe interna anonima:
    addWindowListener(new WindowListener()
    {
    public void windowClosing(WindowEvent e) {}
    public void windowClosed(WindowEvent e) {}
    public void windowIconified(WindowEvent e) {}
    public void windowDeiconified(WindowEvent e) {}
    public void windowOpened(WindowEvent e) {}
    public void windowDeactivated(WindowEvent e) {}

    public void windowActivated(WindowEvent e)
    {
    if (!framePrimoPiano.isActive())
    framePrimoPiano.toFront();
    }
    });

    Spero sia stato utile e chiaro!

    PS [OT]: coms si formatta il codice nei post?

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2004
    Messaggi
    76
    Non so se era chiaro (anche se ovvio...non si sa mai!)... ma il codice che ho scritto va inserito all'interno della classe del Frame principale!

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.