Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Java - alla ricerca di due metodi jbutton
Forum - Java - alla ricerca di due metodi jbutton

Avatar
swaqpoli (Normal User)
Newbie


Messaggi: 15
Iscritto: 13/08/2010

Segnala al moderatore
Postato alle 16:56
Martedì, 03/04/2012
buonasera a tutti
ho dato un'occhiata alla documentazione oracle, ma ho ottenuto solo tanta confusione.
mi dite quali sono i metodi giusti da usare?
voglio creare un bottone che faccia uscire dal programma, anche forzandolo, mentre è in esecuzione.
una sorta di Ctrl+c però sotto forma di metodo.

l'altro metodo che cerco è quello che, una volta pigiato il bottone, lo rilasci, senza mantenerlo clickato.


:k:

PM
Avatar
Bonny (Member)
Expert


Messaggi: 437
Iscritto: 24/04/2009

Up
1
Down
V
Segnala al moderatore
Postato alle 20:23
Martedì, 03/04/2012
Comprare un manuale no?!:yup:
Allora associare un listener(per intercettare l'evento click) ad un jbutton ci sono vari modi per farlo..
1)implementare l'interfaccia ActionListener, un interfaccia è una classe con dei metodi i quali non hanno implementazione segue che non può eseere istanziata  ma la si può implementare.
Quest'ultima operazione consiste nel creare una classe che implementa l'interfaccia segue che le istanza della suddetta classe seguiranno uno standard, ti faccio un esempio
Codice sorgente - presumibilmente Java

  1. interface Geometria{
  2.  
  3.   public int area();
  4. }
  5.  
  6. class Quadrato implements Geometria{
  7.   private int lato;
  8.   public int area(){
  9.       return lato * lato;
  10.   }
  11. }


Come vedi l'implementazione dell'interfaccia avviene mediante la parola chiave implements (ti obbliga ad implementare tutti i metodi)
Come vedi ogni figura geometrica seguirà uno standard (se implementa l'interfaccia Geometria) ovvero posseggono un metodo che ritorna l'area della figura!
comunque nel tuo caso  per il jbutton

Codice sorgente - presumibilmente Java

  1. class Finestra implements ActionListener{
  2.  
  3.     private JButton btn;
  4.  
  5.     public Finestra(){
  6.        btn = new JButton("clicca");
  7.        btn.addActionListener(this);
  8.     }
  9.  
  10.     public actionPerformed(ActionEvent e){
  11.         String t =  e.getActionCommand();
  12.     /*come vedi posso aggiungere altri jbutton e riconoscerli mediante t*/
  13.         if(t.equals("clicca")){
  14.              System.exit(0); //arresto(forzato) il programma
  15.         }
  16.     }
  17. }



2)sovrascrivere il metodo actionPerformed del jbutton in questione
Codice sorgente - presumibilmente Java

  1. class Finestra implements ActionListener{
  2.  
  3.     private JButton btn;
  4.  
  5.     public Finestra(){
  6.  
  7.        btn = new JButton("Genera");
  8.        btn.addActionListener(new ActionListener() {
  9.             @Override
  10.             public void actionPerformed(ActionEvent e) {  
  11.                System.exit(0);
  12.             }
  13.         });  
  14.  
  15.      }
  16.  
  17. }


spero di esserti stato d'aiuto

Ultima modifica effettuata da Bonny il 03/04/2012 alle 20:25
Ciao bonny... - swaqpoli - 03/04/12 22:33
si sei stato molto chiaro...ma ti spiego meglio :) ho due bottoni: ok ed esci. quando pigio ok, il programma svolte l'azione richesta e fin qui ci siamo. ma il bottone resta pigiato e non riesco a fare nient'altro, mentre io vorrei poter pigiare su "esci" e forzare il programma ad uscire. i - swaqpoli - 03/04/12 22:35
dovresti postare il codice detto cosi sembra che le istruzioni eseguite dopo l'evento click siano all'interno di un ciclo che non termina mai... - Bonny - 04/04/12 11:01
PM