[problem] Button kliknięcie

0

Witam W sumie to jestem zielony jeśli chodzi o język Java, chociaż wydaję mi się, że podstawy znam, no ale nieważne przejdźmy do sedna sprawy: Chciałbym aby po kliknięciu w przycisk nastąpiła akcja :) Wydawało mi się to proste, ale okazało się, że nie umiem sobie z tym poradzić. O to część kodu (myślę że starczy):
Tworze przycisk:

 JButton sortuj=new JButton("sortuj wg.Ceny");
		        sortuj.setBounds(new Rectangle(0, 160, 130, 20));
			    frame.add(sortuj);  

następnie tworze Arrayliste :

final ArrayList<book> lista = new ArrayList<book>(); 
                
		        lista.add(new book("Nazwa", "Autor", cena));  

Oczywiście z konkretnymi danymi książki zamiast nazwy,autora,ceny.
Dalszy kod wygląda następująco:

 sortuj2.addActionListener(new ActionListener()
		        {
		           public void actionPerformed (ActionEvent e)
		           {
		        	   Collections.sort(lista, new AutorComparator(true)); 
		           }
		        });
		        
		        
		        String[][] dane = new String[lista.size()][]; 
                
		        for (int i = 0; i < dane.length; i++) { 
		           dane[i]=lista.get(i).getData(); 
		        } 
		         
		        
		        
		        JTable table = new JTable(dane, lista.get(0).getHeader()); 
			    JScrollPane scrollPane = new JScrollPane(table);
		        frame.add(scrollPane, BorderLayout.CENTER);

Lista wypisuje się w postaci tabeli, posortować daną kolumnę chcę poprzez Comperator - i to działa póki nie umieszczam Collections.sort w ActionListenerze :) Myślałem, że tak powinien wyglądać ActionListener i aktywować sortowanie, gdy przycisk zostanie kliknięty... Proszę was o pomoc bo czytam, szukam, kombinuje i nie potrafię tego zrobić. Idę nie tą drogą?
Bardzo proszę o pomoc
Pozdrawiam Stagi

0

Sortujesz listę, natomiast w JTable dane masz z dwuwymiarowej tablicy - tak to nie zadziała. Możesz dodać aby za każdym razem po sortowaniu tworzył model (np. DefaultTableModel) i ustawiał go w JTable. Najlepiej jednak przeczytaj sobie o sortowaniu w samym JTable: http://download.oracle.com/javase/tutorial/uiswing/components/table.html#sorting

1 użytkowników online, w tym zalogowanych: 0, gości: 1