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

    Finestra per qualche secondo

    Ciao a tutti, vorrei far comparire una finestra mentre il programma sta eseguendo una azione, come si fa?
    Cioe' in pratica una finestra con su scritto "caricamento in corso" che poi sparisca da sola quando finisce di caricare.

  2. #2
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Dai un'occhiata alle classi JProgressBar e JFrame/JWindow.
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  3. #3
    Ho letto qualcosa di JProgressBar e parla di thread, ecco io vorrei fare una cosa meno complicata, mi basta che con un istruzione apra la finestra e poi piu' avanti con un altra istruzione la chiuda. Non esiste nulla del genere?

  4. #4
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da pier_IP
    Ho letto qualcosa di JProgressBar e parla di thread, ecco io vorrei fare una cosa meno complicata, mi basta che con un istruzione apra la finestra e poi piu' avanti con un altra istruzione la chiuda. Non esiste nulla del genere?
    Senza i thread non puoi (pensaci un attimo: come farebbe a eseguire le tue operazioni se il programma è occupato ad aggiornare la progress bar?)
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  5. #5
    Si avevo capito la necessita' di un thread concorrente per la progress bar.
    Ma io vorrei un semplice pannello con un messaggio che avvisa l'utente che la connessione e' in corso e che poi sparisca quando la connessione e' avvenuta. Praticamente come una JOptionPane.showMessageDialog solo che l'utente non deve cliccare per chiuderla.
    Avevo inizialmente pensato ad un semplicissimo
    codice:
    System.out.println("Connessione con ii server in corso...");
    //istruzioni sulla connessione con il server
    System.out.println("Connessione eseguita");
    Ma visto che il programma non viene eseguito con l'ausilio del terminale, quindi ho pensato ad un pannello che e' piu' user-friendly.
    Una cosa del genere:
    //apri pannello con su scritto "Connessione con ii server in corso..."
    //istruzioni sulla connessione con il server
    //chiudi pannello
    //altro....

  6. #6
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Un abbozzo di quello che devi fare può essere il seguente:
    codice:
    public void connect() {
        final JFrame waitingDialog = ...; // è importante che sia final
        new Thread(new Runnable() {
            public void run() { // codice da far girare in parallelo
                ... operazioni per effettuare la connessione
    
                waitingDialog.setVisible(false); // terminata la connessione chiudi la finestra
            }
        }).start(); // lanci il thread
    
        waitingDialog.setVisible(true); // rende visibile la finestra
    }
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  7. #7
    Grazie mille! Lo sperimentero'!

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.