|
#1
|
|||
|
|||
|
Ciao a tutti,
è da lacune ore che sto impazzendo ed ora provo a rivolgermi a voi. Sto cercando di implementare in una JTable un button nell' header per effettuare l'ordinamento dei record... Per fare ciò mi son creato una classe che implementa TableCellRenderer per effettuare il renderer corretto della cella e lo ho applicato ad ogni header di colonna... Fin qui tutto ok. Il mio header ora è così composto: da un JPanel con una JLabel ( riportante il nome della colonna ) ed un JButton che mi servirebbe per intercettare l'intenzione dell' utente di effettuare l'ordinamento della colonna... Ora per intercettare l'evento di pressione sul button aggiungo un ActionListener al button che però non intercetta l'evento. Qualcuno sa dirmi dove sbaglio? Ciao Ivan Questo è quello che faccio nel Renderer degli header: [...] public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { JPanel panel = new JPanel (); JLabel label = new JLabel (); JButton button = new JButton(); button.addActionListener(new button_actionAdapter(this)); panel.add( label ); panel.add( button ); return panel; } void button_actionPerformed(ActionEvent e) { System.out.println( "PRESSED" ); } [...] e questo è l'ActionListener class button_actionAdapter implements java.awt.event.ActionListener { JTableSortButton adaptee; button_actionAdapter(JTableSortButton adaptee) { this.adaptee = adaptee; // Qui ci entra } public void actionPerformed(ActionEvent e) { adaptee.button_actionPerformed(e); // Qui non ci entra } } -- questo articolo e` stato inviato via web dal servizio gratuito http://www.newsland.it/news segnala gli abusi ad abuse@newsland.it |
|
#2
|
|||
|
|||
|
Domenico Neri (libero) wrote:
> Probabilmente l'evento viene intercettato dalla JTable, sul'tutorial di Sun > riferito a swing esiste l'esempio di quello che tu vuoi fare ti conviene > leggerlo. > > ciao > Domenico > > Ho scritto delle classi per la gestione dei dati in tabella, ljist e jcombobox. ti permettono di inserire qualsiasi lista di oggetti nella tablella e selezionare il contenuto di ogni singola colonna, ed effetture ordinamento crescente e decrescente cliccando sull'header della colonna. Se ti interessano te le invio i prv non so dove publicarle sul web. Magari mi aiuti a migliorarle |
| Thread Tools | |
| Display Modes | |
|