Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    12

    [java]frame che scompare dopo tot minuti

    ciao ragazzi...
    ho bisogno un aiutino per fare la cosa seguente...
    si apre un frame iniziale, da qui schiacciando un bottone devo far comparire un altro frame che dopo ad esempio 30 secondi si chiude e lascia il posto ad un altra finestra... cosa dovrei fare???

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,326
    Utilizzare i thread: crei un thread assieme al frame (e magari gli passi il frame stesso nel costruttore) che attende 30 secondi e poi richiama una dispose() o una hide() sul frame (a seconda se vuoi chiudere o semplicemente nascondere la finestra).

    Un esempio al volo del metodo run() di quel thread:
    codice:
    public class TuoThread extends Thread {
       private JFrame finestra;
       public TuoThread(JFrame finestra) { this.finestra = finestra; }
       public void run() {
          try {
             sleep(30000);   // Attendo 30 secondi
             if (finestra != null) finestra.dispose();   // Chiudo la finestra
          } catch (Exception e) { e.printStackTrace(); }
       }
    }
    Potresti, a questo punto, creare il thread e avviarlo subito dopo aver visualizzato la finestra:
    codice:
    // Suppongo che la tua finestra si chiami "fin":
    fin.setVisible( true );
    
    TuoThread tt = new TuoThread( fin );
    tt.start();
    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

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    12
    grazie ci proverò!!!!

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Se si devono fare operazioni con l'interfaccia utente a seguito di un evento "temporizzato", in genere è meglio usare la classe javax.swing.Timer piuttosto che un Thread "nudo e crudo".
    Questo sempre per la solita questione che Swing non è thread-safe.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    12
    grazie Lele sono riuscita!!!!!!!

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.