Visualizzazione dei risultati da 1 a 2 su 2

Discussione: un pulsante 2 azioni

  1. #1
    Utente di HTML.it L'avatar di mdegiova
    Registrato dal
    Feb 2009
    residenza
    Sondrio
    Messaggi
    134

    un pulsante 2 azioni

    salve, ho un problema che mi scervella, sono alle prime armi con java.

    vorrei ottenere che con un clik sul mio pulsente istantaneamnete mi appare un'immagine e successivamente esegue il resto dell'azione.

    ecco il codice che sto scrivendo:


    codice:
    ...
    ..
    private void btcontaActionPerformed(java.awt.event.ActionEvent evt) {   
    
    //azione 1                                    
             conta2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/gif/Open16.gif"))); 
    //fine azione 1  
    
    //azione 2         
             try {
                
             //attesa prima del link
                 Thread.sleep(10000);
    //Fine attea
                 int rows = table.getRowCount();      
          
                  if (rows == 0){
           conta.setText("Nessun risutato");        
        }else{
           String Moris = String.valueOf(table.getRowCount());
           conta.setText("Totale Righe : "+ Moris);   
           }
         }
                catch (Exception err){       
             } 
    //fine azione 2
        }  
    
    .....

    chiedo aiuto
    grazie
    Ultima modifica di LeleFT; 23-06-2014 a 10:53 Motivo: Aggiunti i tag CODE

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da mdegiova Visualizza il messaggio
    vorrei ottenere che con un clik sul mio pulsente istantaneamnete mi appare un'immagine e successivamente esegue il resto dell'azione.
    Nel contesto di gestione di un evento, puoi fare tutte le operazioni che vuoi ... purché in totale non si vada ad impiegare "troppo" tempo.
    I metodi dei listener sono invocati (dal framework) nel contesto del Event Dispatch Thread. Se tieni tu impegnato per troppo tempo il EDT, la tua interfaccia grafica resta "congelata" in quel frangente di tempo. Nulla può essere aggiornato/ridisegnato a video e altri eventi non possono essere dispacciati.

    Quindi se fai:

    codice:
    conta2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/gif/Open16.gif")));

    Va grosso modo bene e non impiega di certo tanto tempo.
    Ma un:

    codice:
    Thread.sleep(10000);

    No, non va proprio bene.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

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.