Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1

    gestire più bottoni in un applet

    Salve,
    ho un applet che deve contere più bottoni ma non so come gestire le azioni ad essi collegate, in quanto so che bisogna sovrascrivere il metodo actionPerformed ma non mi è chiaro se devo gestire tutto qui dentro, inoltre come faccio a dire ad un bottone che se è cliccato deve fare qualcosa?? devo usare per caso onclick??? ma come??? grazie mille per la disponibilità.

  2. #2
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    a grandi linee una cosa del genere
    codice:
    public class TuaClasse implements ActionListener {
      Button b1;
      Button b2;
    
      public void actionPerformed(ActionEvent e) {
        Object o = e.getSource();
        if (o == b1) {
          ...
        } else if (o == b2) {
          ...
        }
      }
    }
    ma è un argomento lungo da spiegare e ci sono diversi approcci alla gestione degli eventi
    http://www.mokabyte.it/1998/02/eventi.htm questo è un tutorial che spiega gli eventi di java

  3. #3
    grazie di aver risposto.
    la mia classe già contiene una inner class che sovrascrive il metodo actioPerformed solo che avendo molti bottoni non so se fare una inner class per ciascun bottone oppure usare la stessa classe e strutturando il tutto con if else! altra cosa nell'articolo di mokabyte non ho capito molto, nel senso che abbastanza lungo e mi perdo leggendo non avete per caso qualche altro articolo da sottoppormi?
    altra domanda: dovrei tra questi bottoni averne uno che resta cliccato finchè non lo riclicco ma sono so come fare avete dei suggerimenti??
    grazie mille per la disponibilità

  4. #4
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Puoi usare la stessa inner class e utilizzare l'istruzione if... else... per controllare ciascun pulsante.

    Oppure puoi estendere la classe JButton in modo da assegnare a ciascun pulsante un ID (intero) in modo da poter controllare il pulsante tramite il costrutto switch().


    Per il pulsante che deve rimanere premuto esiste la classe JToggleButton.


    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
    ciao allora seio faccessi una cosa del genere:
    codice:
    class Pippo implements ActionListener {
            public void actionPerformed(ActionEvent evt) {
                if(evt.getSource()==bottone1) {
                    conn.send("ciao");
                }
                
               if(evt.getSource()==bottone2) {
                    conn.send("salve");
                }
          }
    }
    e poi nella classe faccio

    codice:
    bottone1.addActionListener(oggettoPippo);
    bottone2.addActionListener(oggettoPippo);
    è corretto??
    altra domanda siccome la mia classe estende Applet non posso usare JToggleButton quindi conoscete un modo alternativo??

    grazie mille

  6. #6
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    magari if else if è più corretto e performante
    per il resto va bene
    il toggle button esiste solo (credo) nella swing
    se puoi usa un Checkbox

  7. #7
    purtroppo non posso usare nient altro se non bottoni!!!!!

  8. #8
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Originariamente inviato da floyd
    magari if else if è più corretto e performante
    Non ho capito perchè...
    purtroppo non posso usare nient altro se non bottoni!!!!!
    Se le uniche tue possibilità sono AWT e, di conseguenza, Button, non ti resta che armarti di tanta pazienza, estendere Button aggiungendogli la proprietà per il secondo stato (i due stati sono: "premuto" e "non premuto") e ridefinire il metodo paint() in modo da ricreare il pulsante in base allo stato che ha.


    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

  9. #9
    ciao,
    io il metodo paint non lo sovrascrivo affatto!

  10. #10
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Originariamente inviato da gattamelogna
    ciao,
    io il metodo paint non lo sovrascrivo affatto!
    Cos'è? Una presa di posizione?


    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.