Pregunta

Tengo un JTable que almacena los resultados de una consulta de base de datos, hasta ahora tan bueno. Lo que yo quiero es que la última columna de cada tabla para tener un JButton clickible que se abrirá la pantalla de edición del objeto representado en esa fila, y eso significa que el botón necesitará conocer los detalles de la primera columna de la tabla de su propia fila (el ID de la base de datos).

Cualquier consejo? Ya he probado sólo JButtons añadiendo pero se convirtieron en texto cuando traté de ejecutarlo.

¿Fue útil?

Solución

A diferencia de la anterior tutorial, hay una manera de hacer esto sin un posicionamiento matemáticas complicadas, los oyentes de ratón de encargo, y los modelos de encargo de la tabla. En su lugar, se puede hacer con una sola clase personalizada sencilla siguiendo el patrón descrito aquí:

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

Otros consejos

También puede encontrar mi tutorial sobre un tema similar (en este caso, el uso de un JPanel) útiles, así: celular JPanel personalizada con JButtons en JTable

Tome un vistazo a la introducción de Sun para el componente JTable, en concreto, la sección sobre noreferrer editores y renderizadores . Se discute el uso de CellRenderers , y CellEditors . Lo que se necesita hacer es crear (o pedir prestado) un ButtonCellRenderer y una ButtonCellEditor y luego aplicarlos a la columna en cuestión en su JTable. Los ejemplos que se encuentran en los artículos vinculados deben darle toda la información que necesita.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top