Domanda

Ho un JTable che memorizza i risultati di una query di database, finora tutto bene. Quello che voglio è per l'ultima colonna di ogni tabella per avere un JButton clickible che aprirà la schermata di modifica per l'oggetto rappresentato in quella riga, e questo significa che il pulsante avrà bisogno di conoscere i dettagli della prima colonna della tabella dalla sua una riga (l'ID dal database).

Qualche consiglio? Ho già provato a JButtons aggiungendo, ma si sono trasformati in testo quando ho provato a farlo funzionare.

È stato utile?

Soluzione

Contrariamente al tutorial di cui sopra, v'è un modo per fare questo senza una complicata matematica posizionamento, gli ascoltatori del mouse personalizzato e modelli tabella personalizzata. Invece, può essere fatto con un solo semplice classe personalizzata seguendo il modello descritto qui:

http://web.archive.org/web/20100623105810/http://ivolo.mit.edu/post/A-Simple-Pattern-for-Embedding-Components -nel-a-swing-JTable.aspx

Altri suggerimenti

Si può anche trovare il mio tutorial su un argomento simile (in questo caso, utilizzando un JPanel) utile pure: cella personalizzato JPanel con JButtons in JTable

Date un'occhiata a introduzione di Sun alla componente JTable, in particolare, la sezione sulla noreferrer editori e Renderers . Discute l'uso di CellRenderers , e CellEditors . Cosa avresti bisogno di fare è creare (o prendere in prestito) un ButtonCellRenderer ed un ButtonCellEditor e poi applicarli alla colonna in questione nel vostro JTable. Gli esempi si trovano negli articoli legati dovrebbe darvi tutte le informazioni necessarie.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top