[Java] far partire JProgressBar all'apertura di un JFrame

Discussione in 'Java' iniziata da dany87, 9 Gennaio 2019.

  1. dany87

    dany87 Nuovo Utente

    Registrato:
    9 Gennaio 2019
    Messaggi:
    2
    Mi Piace Ricevuti:
    0
    Punteggio:
    1
    Sesso:
    Maschio
    Buonasera a tutti,
    mi sto scervellando per capire come poter risolvere questo mio problema:
    ho un primo frame, che alla pressione di un JButton apre un secondo frame, in questo ho inserito una JProgressBar. Ho un pulsante e a questo ho associato per prova un ActionListener per poter far partire la JProgressBar, ma vorrei che all'apertura di questo secondo frame questa parta in automatico senza passare per la pressione del pulsante, ma semplicemente all'avvio deve partire la barra:
    Codice:
    public MyFrame2() {
            setSize (400,400);   
            setLocationRelativeTo(null);
            setTitle("Frame nel Frame");
            MyPanel panel = new MyPanel();
            this.add(panel);
        }
        class MyPanel extends JPanel{
            final static int interval = 1000;
            int i;
            Timer t;
            private JProgressBar jpb;
            public MyPanel() {
                setBackground(Color.RED);
                btn = new JButton("fai partire la progressBar!");
                jpb = new JProgressBar(0, 20);
                jpb.setValue(0);
                add(jpb);
                add(btn);
            }
            public void paintComponent(Graphics g) {
                super.paintComponent(g);
                g.setColor(Color.BLACK);
                String zucchero = "attendere prego, erogazione in corso";
                g.drawString(zucchero, 100,100);
    
    
                btn.addActionListener(new ActionListener() {
                    public void actionPerformed (ActionEvent ae) {
                        i = 0;
                        t.start();   
                        btn.setEnabled(true);
                    }
                });
    
                t = new Timer(interval,new ActionListener() {   
                    public void actionPerformed(ActionEvent e) {
                        if(i==20) {
                            t.stop();
                            btn.setEnabled(false);
                        }
                        else
                            i++;
                        jpb.setValue(i);
                    }
                });
            }
        }
    }
    
    questo è il codice del secondo frame, grazie a tutti
     
    Ultima modifica di un moderatore: 10 Gennaio 2019
  2. Max 1

    Max 1 Super Moderatore Membro dello Staff SUPER MOD MOD

    Registrato:
    29 Febbraio 2012
    Messaggi:
    3.542
    Mi Piace Ricevuti:
    265
    Punteggio:
    83
    Sesso:
    Maschio
    @dany87
    Da regolamento del forum, come tutti noi sei tenuto ad usare il tag code.gif quando posti del codice, oppure la funzione codice dalla barra degli strumenti
    box inserisci 2.png.JPG
    Inoltre ti prego di leggere attentamente il regolamento generale del forum e quello di sezione dove posti
    Grazie
    Per questa volta te lo sistemo io ma mi raccomando per il futuro

    Cerca anche di non scrivere tutto il post in grassetto! Lo leggiamo bene anche con font normale
     
Sto caricando...

Condividi questa Pagina