Visualizzazione dei risultati da 1 a 5 su 5

Discussione: JList

Hybrid View

  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2014
    Messaggi
    178

    JList

    Salve,

    ho una JList di 3 elementi. L'utente deve selezionare uno di questi tre elementi e premere il JButton per lanciare un evento. Ovviamente ogni voce della JList fa una cosa diversa quando viene lanciato l'evento.
    Come si fa ?
    Grazie.

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da Bombonera Visualizza il messaggio
    ho una JList di 3 elementi. L'utente deve selezionare uno di questi tre elementi e premere il JButton per lanciare un evento. Ovviamente ogni voce della JList fa una cosa diversa quando viene lanciato l'evento.
    Come si fa ?
    Puoi basarti sull'indice selezionato o sull'oggetto selezionato nel JList ... dipende.
    Ah, imposta allora la selezione "singola" (per default è a intervalli multipli)
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2014
    Messaggi
    178
    Quote Originariamente inviata da andbin Visualizza il messaggio
    Puoi basarti sull'indice selezionato o sull'oggetto selezionato nel JList ... dipende.
    Ah, imposta allora la selezione "singola" (per default è a intervalli multipli)
    devo utilizzare il metodo getSelectedIndex ?

    codice:
    if(lista.getSelectedIndex() == 0)
        ............................
    else if(lista.getSelectedIndex() == 1)
       .............................
    in questo modo ?

    per la selezione singola ho fatto

    codice:
    list.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION);

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da Bombonera Visualizza il messaggio
    devo utilizzare il metodo getSelectedIndex ?
    Sì, se ti basi sull'indice selezionato.

    Quote Originariamente inviata da Bombonera Visualizza il messaggio
    codice:
    if(lista.getSelectedIndex() == 0)
        ............................
    else if(lista.getSelectedIndex() == 1)
       .............................
    Sì, e si può anche sfruttare uno switch invece che la catena di if

    Quote Originariamente inviata da Bombonera Visualizza il messaggio
    per la selezione singola ho fatto

    codice:
    list.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION);
    Questo è un intervallo singolo (puoi selezionare più elementi ma contigui). La selezione singola, ovvero solo ed esclusivamente uno selezionato è SINGLE_SELECTION .
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2014
    Messaggi
    178
    ok ho risolto :-) thank you!!

    codice:
    class MyActionListener implements ActionListener
    	{
    
    
    		public void actionPerformed(ActionEvent e) 
    		{
    			if(list.getSelectedIndex() == 0)
    				System.out.println("Riga 1");
    			else if(list.getSelectedIndex() == 1)
    				System.out.println("Riga 2");
    			else if(list.getSelectedIndex() == 2)
    				System.out.println("Riga 3");
    			else if(list.isSelectionEmpty())
    				System.out.println("Nessuna selezione");
    		}
    		
    	}

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.