Torna indietro   Hardware Upgrade Forum > Software > Programmazione

HONOR CHOICE Projector Air Pro: piccolo, portatile e con Netflix
HONOR CHOICE Projector Air Pro: piccolo, portatile e con Netflix
Un proiettore economico, che fa della portabilità e immediatezza i suoi punti di forza. Adatto per una camera da letto o per la casa vacanze, è basato su sistema proprietario Linux ma offre piena compatibilità ufficiale a Netflix
ASUS ProArt GoPro Edition è il notebook compatto per chi crea
ASUS ProArt GoPro Edition è il notebook compatto per chi crea
Un notebook sviluppato in collaborazione con GoPro ma che risponde al meglio alle necessità di tutti coloro che creano contenuti video: robustezza, design, potenza di calcolo e funzionalità si abbinano al meglio tra di loro, pur se a prezzo di un costo elevato per via della tanta memoria onboard
Fable e Sol a confronto: due cartoni animati creati su un PC con RTX 3090
Fable e Sol a confronto: due cartoni animati creati su un PC con RTX 3090
Ho affidato ai due modelli lo stesso mestiere ma non lo stesso identico prompt: trasformare una storia illustrata in un video usando una RTX 3090 e modelli locali. Ne sono usciti due film, due applicazioni e due idee opposte di efficienza. Fucina, progettata con Fable 5, colpisce di più nei primi secondi. Storyboard Studio, costruito con ChatGPT/Codex, regge meglio sulla distanza e vince il confronto complessivo, ma di stretta misura
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 16-08-2010, 15:17   #1
dgiac
 
Messaggi: n/a
[Java]Problema conto alla rovescia

public class AutoKill extends JFrame {
private Container sfondo;
private JTextArea area;

public AutoKill(){
addWindowListener(new Ascoltatore());
setSize(400,400);
setResizable(false);
setTitle("AutoKill");
sfondo = getContentPane();
area = new JTextArea("");
area.setBounds(0,0,400,400);
area.setEditable(false);
sfondo.add(area);
setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);
setVisible(true);
} //AutoKill

protected class Ascoltatore extends WindowAdapter {
public void windowClosing(WindowEvent ev) {
try {
for(int i=5; i>0; i--) {
Thread.sleep(1000);
System.out.println(i);
area.setText(""+i);
} // for
} catch (Exception e) {}
} // windowClosing
} // Ascoltatore

public static void main(String[] args) {
AutoKill a = new AutoKill();
} // main

} // AutoKill

Perchè System.out.println(i); compare ogni secondo sul prompt e area.setText(""+i); compare solo alla fine???? Come devo fare per sistemarlo?
  Rispondi citando il messaggio o parte di esso
Old 16-08-2010, 15:33   #2
tuccio`
Senior Member
 
Iscritto dal: Apr 2010
Città: Frosinone
Messaggi: 416
intanto dovresti usare l'edt per fare modifiche sugli oggetti swing, e poi dovresti usare un thread apposito per un'operazione di questo tipo

http://java.sun.com/products/jfc/tsc.../threads2.html
tuccio` è offline   Rispondi citando il messaggio o parte di esso
Old 16-08-2010, 15:41   #3
dgiac
 
Messaggi: n/a
Mai usata SwingWorker.. è pure astratta.. bel casino. qualche consiglio?? aiutino??
  Rispondi citando il messaggio o parte di esso
Old 16-08-2010, 16:25   #4
tuccio`
Senior Member
 
Iscritto dal: Apr 2010
Città: Frosinone
Messaggi: 416
Codice:
for(int i=5; i>0; i--) {
	Thread.sleep(1000);
	System.out.println(i);
	area.setText(""+i);
	JFrame f = (JFrame)ev.getComponent();
	f.update(f.getGraphics());
} // for
un workaround veramente brutto
tuccio` è offline   Rispondi citando il messaggio o parte di esso
Old 16-08-2010, 16:30   #5
dgiac
 
Messaggi: n/a
PERO' FUNIONAAAA!!
Grazie milleeeee!!!
Ma praticamente crea un'altro JFrame con gli elementi dell'altro e lo aggiorna ogni volta? Giusto?
  Rispondi citando il messaggio o parte di esso
Old 16-08-2010, 16:37   #6
tuccio`
Senior Member
 
Iscritto dal: Apr 2010
Città: Frosinone
Messaggi: 416
no getComponent ritorna il componente che ha generato l'evento, quindi è proprio il riferimento al tuo JFrame, non crea niente
tuccio` è offline   Rispondi citando il messaggio o parte di esso
Old 16-08-2010, 20:49   #7
tylerdurden83
Senior Member
 
Iscritto dal: Nov 2004
Messaggi: 691
Eccoti il programmino

Codice:
import java.awt.event.*;
import javax.swing.*;
import java.util.List;

public class AutoKill extends JFrame {
    private JTextArea area;

    private class Countdown extends SwingWorker<Void, Integer> {
        @Override protected Void doInBackground() {
            for(int i=5; i>0; i--) {
                try {
                    Thread.sleep(1000);
                } catch (InterruptedException ex) {}
                publish(i);
                System.out.println(i);
            }
            return null;
        }

        @Override protected void process(List<Integer> listaDiInteri) {
            Integer i = listaDiInteri.get(listaDiInteri.size() - 1);
            area.setText(""+i);
        }
    }

    public AutoKill(){
        this.addWindowListener(new Ascoltatore());
        this.setSize(400,400);
        this.setResizable(false);
        this.setTitle("AutoKill");
        this.area = new JTextArea("");
        this.area.setBounds(0,0,400,400);
        this.area.setEditable(false);
        this.getContentPane().add(area);
        this.setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);
        this.setVisible(true);
    }

    protected class Ascoltatore extends WindowAdapter {
        @Override public void windowClosing(WindowEvent ev) {
            Countdown c = new Countdown();
            c.execute();
        }
    }

    public static void main(String[] args) {
        SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                new AutoKill();
            }
        });
    }
}
tylerdurden83 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


HONOR CHOICE Projector Air Pro: piccolo, portatile e con Netflix HONOR CHOICE Projector Air Pro: piccolo, portati...
ASUS ProArt GoPro Edition è il notebook compatto per chi crea ASUS ProArt GoPro Edition è il notebook c...
Fable e Sol a confronto: due cartoni animati creati su un PC con RTX 3090 Fable e Sol a confronto: due cartoni animati cre...
Il tablet rugged leggero e sottile: Lenovo ThinkTab X11 offre resistenza, doppia USB-C e batteria rimovibile Il tablet rugged leggero e sottile: Lenovo Think...
AMD Advancing AI 2026: l'hardware AMD per le elaborazioni IA del futuro, tra GPU, CPU e robot AMD Advancing AI 2026: l'hardware AMD per le ela...
Rocket Factory Augsburg ha riscontrato u...
Blue Origin sta ricostruendo e modifican...
BMW taglierà 8.000 posti di lavor...
7.600 annunci di nudify app su Meta, tut...
Visa ne lascia a casa 2600: intelligenza...
Batterie sostituibili? Per Logitech, gli...
IBM: l'IA riduce i costi delle violazion...
Logitech G Cloud bocciata dal pubblico, ...
NVIDIA RTX Spark, provato un prototipo c...
Sony e Fujifilm: evacuate le fabbriche d...
Starship: Ship 40 continua a galleggiare...
UMC investe su Singapore e Tainan per ri...
Steam Machine, novità sulle code:...
Anche Foxconn abbandona VMware e sceglie...
Windows 11 migliora l'accessibilit&agrav...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 23:38.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v