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

    evento su BUTTON (AWT)

    ciao
    volevo sapere se è possibile , attarverso la gestione di ActionListener associato ad un
    Button (AWT) , restituire un valore alla classe chiamante , o come bisogna fare ;
    perchè il metodo actionPerformed di ActionListener non mi sembra lo permetta ;

    grazie

    ciao

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    613

    Re: evento su BUTTON (AWT)

    Originariamente inviato da gbu123
    ciao
    volevo sapere se è possibile , attarverso la gestione di ActionListener associato ad un
    Button (AWT) , restituire un valore alla classe chiamante , o come bisogna fare ;
    perchè il metodo actionPerformed di ActionListener non mi sembra lo permetta ;

    grazie

    ciao
    Quale classe chiamante? Non ho capito che deve dire cosa a chi... c'è un evento che viene generato quando si preme il bottone, e viene notificato a tutti gli ascoltatori collegati, il modello è questo, chi è il chiamante?

  3. #3
    intendevo dire che la classe B in cui ho definito il Button AWT , assieme ad altri oggetti , viene
    istanziata da una classe A a monte ; premendo il tasto Button volevo ritornare alla classe A un valore inserito dall'utente in uno degli oggetti del Frame in cui c'è il Button ;
    spero di essermi spiegato meglio , grazie dell'attenzione cmq
    ciao

  4. #4
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Originariamente inviato da gbu123
    intendevo dire che la classe B in cui ho definito il Button AWT , assieme ad altri oggetti , viene
    istanziata da una classe A a monte ; premendo il tasto Button volevo ritornare alla classe A un valore inserito dall'utente in uno degli oggetti del Frame in cui c'è il Button ;
    spero di essermi spiegato meglio , grazie dell'attenzione cmq
    ciao
    Passa tale classe A all'ActionListener (quindi dovrai passarla alla classe B) quando lo crei:

    codice:
    public class MioListener implements ActionListener {
       private ClasseA mioSorgente;
       public MioListener(ClasseA c) { mioSorgente = c; }
       public void actionPerformed(ActionEvent ae) {
          ... // Fai quello che vuoi quando viene premuto il pulsante
          ... // Qui hai il riferimenti alla tua classe A
       }
    }
    Quando crei il tuo ActionListener:
    codice:
    public class ClasseB ... {
       private ClasseA aMonte;
       ...
       MioListener mioListener = new MioListener( aMonte );
       ...
       Button btn = new Button( ... );
       btn.addActionListener( mioListener );
    }
    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

  5. #5
    grazie

    quindi devo preparare una terza classe C , solo per l'ascoltatore ...

    non c'è un metodo più semplice ?

    grazie

    ciao

  6. #6
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Originariamente inviato da gbu123
    grazie

    quindi devo preparare una terza classe C , solo per l'ascoltatore ...

    non c'è un metodo più semplice ?

    grazie

    ciao
    Più semplice di così... in che altro modo vorresti poter passare informazioni che non hai??
    PS: non è che aggiungendo una classe anonima ci sia un oggetto in meno... il fatto di dare un nome alla classe del Listener non ti fa creare più oggetti, al contrario... ti consente di far sì che più pulsanti condividano lo stesso oggetto Listener.

    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

  7. #7
    grazie

    scusa la mia ignoranza , ma sono agli inizi ..

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 © 2026 vBulletin Solutions, Inc. All rights reserved.