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

    immettere una pausa in un evento

    Devo mettere una una pausa tra un evento ad un altro, esattamente in un (actionPerformed).
    qualcuno mi può aiutare?

    if (controllo.equals("start")){
    BottoneRosso.setIcon(icona1chiara);
    pausa???????
    BottoneRosso.setIcon(icona1);

  2. #2
    Utente di HTML.it L'avatar di Pastore12
    Registrato dal
    Oct 2008
    Messaggi
    1,051
    "Ethics are to me something private. Whenever you use it as an argument for why somebody_else should do something, you’re no longer being ethical, you’re just being a sanctimonious dick-head"
    Linus Torvalds

  3. #3
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: immettere una pausa in un evento

    Originariamente inviato da kent9090
    Devo mettere una una pausa tra un evento ad un altro, esattamente in un (actionPerformed).
    qualcuno mi può aiutare?

    if (controllo.equals("start")){
    BottoneRosso.setIcon(icona1chiara);
    pausa???????
    BottoneRosso.setIcon(icona1);
    No, lì sei nel contesto del EDT, che non devi mai tenere impegnato per troppo tempo. Quindi Thread.sleep no di certo.
    Devi ragionare di più con gli eventi ed eventualmente sfruttare un timer (javax.swing.Timer).
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  4. #4
    vorrei un esempio molto semplice per usare il timer.

    grazie

  5. #5
    Utente di HTML.it L'avatar di Pastore12
    Registrato dal
    Oct 2008
    Messaggi
    1,051
    Il tutorial della Oracle (link sopra) non ti è d'aiuto?
    "Ethics are to me something private. Whenever you use it as an argument for why somebody_else should do something, you’re no longer being ethical, you’re just being a sanctimonious dick-head"
    Linus Torvalds

  6. #6

    .......

    no
    magari con una breve spiegazione in italiano

  7. #7
    codice:
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*; 
    
    
    public class ClasseSimon extends JFrame implements ActionListener{
    	
    	JLabel Titolo =new JLabel("Simon"); 
    	JPanel panelSchiera = new JPanel();
    	JPanel panelBack = new JPanel();
    	JPanel panelStart = new JPanel();
    	GridLayout layBack = new GridLayout(2,2);	
    	GridLayout layStart = new GridLayout(2,1);	
    	public JButton BottoneRosso;
        public JButton BottoneVerde;
        public JButton BottoneBlu;
        public JButton BottoneRosa;
    	public JButton BottoneInformazione= new JButton("Informazione");
    	public JButton BottoneStart;
    	
        public ClasseSimon() {
        	
        	JFrame finestra = new JFrame();
        	
        	ImageIcon icona1 = new ImageIcon("rosso.jpg"); 
    	  	BottoneRosso = new JButton("rosso", icona1); 
    	  	BottoneRosso.setSize(icona1.getIconWidth(), icona1.getIconHeight());
    	  	BottoneRosso.addActionListener(this);
    	  	getContentPane().add(BottoneRosso);
    	  	
    	  	
    	  	
    	  	ImageIcon icona2 = new ImageIcon("verde.jpg"); 
    	  	BottoneVerde = new JButton("verde", icona2); 
    	  	BottoneVerde.setSize(icona2.getIconWidth(), icona2.getIconHeight());
    	  	BottoneVerde.addActionListener(this);
    	  	getContentPane().add(BottoneVerde);
    	  	
    	  	ImageIcon icona3 = new ImageIcon("blu.jpg"); 
    	  	BottoneBlu = new JButton("blu", icona3); 
    	  	BottoneBlu.setSize(icona3.getIconWidth(), icona3.getIconHeight());
    	  	BottoneBlu.addActionListener(this);
    	  	getContentPane().add(BottoneBlu);
    	  	
    	  	ImageIcon icona4 = new ImageIcon("rosa.jpg"); 
    	  	BottoneRosa = new JButton("rosa", icona4); 
    	  	BottoneRosa.setSize(icona4.getIconWidth(), icona4.getIconHeight());
    	  	BottoneRosa.addActionListener(this);
    	  	getContentPane().add(BottoneRosa);
    	  	
    	  	ImageIcon icona5 = new ImageIcon("start.jpg"); 
    	  	BottoneStart = new JButton("start", icona5); 
    	  	BottoneStart.setSize(icona5.getIconWidth(), icona5.getIconHeight());
    	  	BottoneStart.addActionListener(this);
    	  	getContentPane().add(BottoneStart);
    	  	
    	  	BottoneInformazione.addActionListener(this);
    	  	
    	  	panelSchiera.setLayout(layBack);
    	  	panelStart.setLayout(layBack);
    	  	
    		panelSchiera.add(BottoneRosso);
    		panelSchiera.add(BottoneVerde);
    		panelSchiera.add(BottoneBlu);
    		panelSchiera.add(BottoneRosa);
    		
    	    panelStart.add(BottoneStart);
    	    panelStart.add(BottoneInformazione);
    	    
    	    panelBack.add(Titolo);
    		
    		finestra.add(panelStart, "West");
    		finestra.add(panelSchiera, "Center");
    		finestra.add(panelBack, "North");	
    		
    		finestra.addWindowListener(new GestoreFinestra());
    		finestra.setSize(700, 350);
    		finestra.setTitle("Simon");
    		finestra.setVisible(true);
    		
        }
    			
    	  
    	  
    	  public void actionPerformed(ActionEvent e) {
    	  	ImageIcon icona1chiara = new ImageIcon("davinci.jpg"); 
    	  	ImageIcon icona1 = new ImageIcon("rosso.jpg"); 	
    	    String controllo = e.getActionCommand(); 
    	    if (controllo.equals("Informazione"))  	
    	    	JOptionPane.showMessageDialog(null, "Simon propone una sequenza di luci e suoni sempre più difficile, da ripetere subito dopo cliccando con il mouse sui tasti corrispondenti. ");
    	    
    	    if (controllo.equals("start")){
    	    	BottoneRosso.setIcon(icona1chiara);
    		  	
    		  	????????????????????????????????????
    		  	BottoneRosso.setIcon(icona1);
    	    }  	
    	    	
    	    	
    	    	
    	  }
        
    	  
    	    }

  8. #8
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320

    Moderazione

    Però io in questa discussione ti avevo detto chiaramente che il codice andava postato usando gli appositi tag CODE, come specificato nel punto 6 del regolamento interno che ti avevo linkato.

    Per questa volta lo sistemo io, alla prossima chiudo la discussione.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

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.