AppletTalk.com Forum Index AppletTalk.com
Java discussions newsgroups
 
Archives   FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Problema con i thread

 
Post new topic   Reply to topic    AppletTalk.com Forum Index -> Java (Italian)
View previous topic :: View next topic  
Author Message
raynor@localhost
Guest





PostPosted: Wed Jan 26, 2005 11:47 am    Post subject: Problema con i thread Reply with quote



Ho implementato un algoritmo che, dipendentemente dagli input, impiega
un tempo variabile per terminare (da millesimi a diversi secondi).
Durante l'elaborazione vorrei però che l'applicazione non rimanesse
bloccata, ma fosse "attiva" e magari anche mostrare una progress bar che
indichi la percentuale di elaborazione completata.
La finestra principale è derivata da JFrame, l'algoritmo si avvia
tramite la pressione di un JButton. Ho pensato di fare aprire una
JWindow (nella quale avviare l'algoritmo) contenente la JProgressBar che
dovrebbe "riempirsi" mano a mano che l'algoritmo procede.
Ho fatto una cosa del genere:

// finestra principale
// con ActionListener del JButton

public void actionPerformed(ActionEvent e) {
ProgressWindow pw = new ProgressWindow(parametri_algoritmo);
....
}


// ProgressWindow

public class ProgressWindow extends JWindow implements Runnable {
private parametri;
private JProgressBar progress;

public ProgressWindow(parametri) {
setParametri(parametri);
progress.setSize(...);
progress.moreOperations();
....
}
public void run() {
// devo avviare algoritmo(parametri) e aggiornare la progress
}


Visto che non sono molto ferrato sui Thread, cosa metto nel run()?

Grazie a tutti per l'aiuto.
Back to top
[Ech3L0n] NSA
Guest





PostPosted: Wed Jan 26, 2005 3:37 pm    Post subject: Re: Problema con i thread Reply with quote



On Wed, 26 Jan 2005 11:47:21 GMT, raynor@localhost wrote:

Quote:
Ho implementato un algoritmo che, dipendentemente dagli input, impiega
un tempo variabile per terminare (da millesimi a diversi secondi).
Durante l'elaborazione vorrei però che l'applicazione non rimanesse
bloccata, ma fosse "attiva" e magari anche mostrare una progress bar che
indichi la percentuale di elaborazione completata.
La finestra principale è derivata da JFrame, l'algoritmo si avvia
tramite la pressione di un JButton. Ho pensato di fare aprire una
JWindow (nella quale avviare l'algoritmo) contenente la JProgressBar che
dovrebbe "riempirsi" mano a mano che l'algoritmo procede.
Ho fatto una cosa del genere:

// finestra principale
// con ActionListener del JButton

public void actionPerformed(ActionEvent e) {
ProgressWindow pw = new ProgressWindow(parametri_algoritmo);
...
}


// ProgressWindow

public class ProgressWindow extends JWindow implements Runnable {
private parametri;
private JProgressBar progress;

public ProgressWindow(parametri) {
setParametri(parametri);
progress.setSize(...);
progress.moreOperations();
...
}
public void run() {
// devo avviare algoritmo(parametri) e aggiornare la progress
}


Visto che non sono molto ferrato sui Thread, cosa metto nel run()?

Grazie a tutti per l'aiuto.

Non reinventare la ruota:

http://java.sun.com/j2se/1.4.2/docs/api/javax/swing/ProgressMonitor.html

Ripeto anche per te: dieci minuti in più, persi a spulciare la
documentazione classe per classe, possono salvare ore di lavoro ;)

--
Fermiamo Scientology prima che sia troppo tardi!!!
http://xenu.com-it.net - http://xenu.freewinds.cx/ - http://www.xenu.net/
(per rispondere personalmente leva IlDitoDalCulo)

Back to top
raynor@localhost
Guest





PostPosted: Thu Jan 27, 2005 1:16 pm    Post subject: Re: Problema con i thread Reply with quote



[Ech3L0n] NSA wrote:

Quote:

Non reinventare la ruota:

http://java.sun.com/j2se/1.4.2/docs/api/javax/swing/ProgressMonitor.html

Ripeto anche per te: dieci minuti in più, persi a spulciare la
documentazione classe per classe, possono salvare ore di lavoro ;)


Ti ringrazio per il consiglio, ma il fatto è che io non ho ben chiaro
come funzionano i thread, per cui non riesco ad ottenere ciò che vorrei
(che è proprio quello che viene mostrato negli esempi sulla JProgressBar
e ProgressMonitor). Dove potrei trovare una guida ben fatta all'uso dei
thread?
Ho letto "Java mattone dopo mattone", da lì *sembra* che io abbia capito
il funzionamento, ma poi, quando devo applicare tutto questo alla mia
applicazione saltano fuori i casini.
Ciao e grazie.

Back to top
Display posts from previous:   
Post new topic   Reply to topic    AppletTalk.com Forum Index -> Java (Italian) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2006 phpBB Group
SEO toolkit © 2004-2006 webmedic.