Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 15 su 15
  1. #11
    ok grazie...la sto guardando è interessante ora devo solo capire come riuscire a tradurre la mia vecchia classe che estendeva JPanel e implementava Runnable con la nuova classe...avete qualche idea ? perche mi serve che questo Thread abbia o sia lui stesso un JPanel...

  2. #12
    E se passi alla classe un riferimento a un JPanel ?
    Experience is what you get when you don’t get what you want

  3. #13
    o avevo pensato di realizzarlo cosi:

    creare una classe che estende JPanel con una varibile di istanza SwingWorker e definire i metodi construct e finished direttamente nel momento in cui instanzio l'oggetto SwingWorker.

    insomma una cosa del tipo:

    worker = new SwingWorker() {
    public Object construct() {
    return doWork(); //questo metodo è quello che realmente deve fare il Thread
    }
    public void finished() {


    }
    };
    worker.start();

    in questo modo realizzo una sola classe che è un oggetto Swing e che mi gestisce il Thread. cosa ne pensate ?

  4. #14
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    906
    Il metodo da implementare e' doInBackground, altrimenti continui a bloccare l'applicazione.
    http://java.sun.com/docs/books/tutor...cy/simple.html
    P.s. Se metti il codice tra i tag [*code] [*/code] (senza *) viene indentato e piu' leggibile per chi ti deve dare una mano.

  5. #15
    eccomi qua...

    ho fatto delle prove per escludere che il problema sia legato al metodo actionPerformed del componente Swing che da il via alle operazioni. In pratica ho modificato la classe che gestisce i calcoli facendogli implementare Runnable. Ora ho quindi due Thread uno che sarebbe il vecchio main (per comodita lo chiamo Thread principale)e uno di visualizzazione. Il Thread di visualizzazione viene avviato dal Thread principale e lo stesso Thread principale viene avviato tramite invokeLater dall'actionPerformed del componente swing (quindi è asincrono). In questo modo ho escluso che sia un problema legato al componente swing che vede il Thread non come tale ma come un metodo da eseguire. Il risultato?! lo stesso interfaccia grafica bloccata perennemente....


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 © 2026 vBulletin Solutions, Inc. All rights reserved.