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

    [java] utilizzo JToggleButton

    ciao a tutti

    sto progettando una finestra con un JToggleButton vorrei fare in modo che quando il pulsante è attivo il programma continua a fare un'operazione, quanto viene disattivato smette di fare quell'operazione, questo è il mio codice:

    codice:
    void reg_stop_actionPerformed(ActionEvent e) {
        registra=true;
        while(registra){
        this.e.misura();
        }
      }
    il problema è che gia con questo codice il programma non funziona correttamente, infatti appena entro nel while non ne esco + nemmeno se clikko su un'altro pulsante che mi setta la variabile booleana=false (questo farebbe uscire dal while)

    secondo me il problema sta nel fatto che quando il programma entra nel while non riescie + a leggere gli eventi generati dagli ascoltatori, e quindi non capisce che io ho premuto sul pulsante che cambia il valore di registra....come posso risolvere questo problema?


    grazie nik
    "durante i primi 5 miuti di pioggia nel bosco c'è ancora asciutto, poi quando smetterà di piovere nel bosco cadranno gocce per 5 minuti.....la natura ha un'ottima memoria..."

    http://www.kumbe.it

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,303
    Esattamente. Per questo genere di applicazioni si usano i Thread.
    http://java.sun.com/j2se/1.4.2/docs/...ng/Thread.html

    Devi inserire il codice da eseguire (compreso del while) all'interno del metodo run() di una classe che estende Thread e passare, quindi, al thread un riferimento all'interfaccia contenente il JToggleButton. Devi far sì, quindi, che questa interfaccia predisponga un metodo per "leggere" lo stato del pulsante.


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