Celda Jtable personalizada

GoVeM
11 de Noviembre del 2005
hola, estoy trabajando en JBuilderX, y me pregunto si es posible que al editar una celda de una JTable, escribir un numero, y luego apretar enter para confirmar esa edicion, se tome el valor ingresado, se aplique a una funcion x, y el resultado de esa funcion sea la que aparezca en la celda.
Esto es con el fin de que la persona solo tenga que digitar el dato "en bruto" y automaticamente aparezca el valor calculado en la misma celda.
Si alguien sabe, se lo agradeceria

chuidiang
11 de Noviembre del 2005
Hola:

El JTable permite la posibilidad de que un dato se pinte como tú quieras. Lo habitual, por ejemplo, sería poner un menú o un icono en vez de un número o un texto, pero también puedes hacer lo que tú quieres.

La idea básica es hacer una clase que implemente TableCellRenderer. El JTable dará a esta clase el valor que queire pintar y tú, en ella, puedes devolver el valor después de aplicar la función. Eso será lo que pinte el JTable.
Echa un ojo en http://www.geocities.com/chuidiang/java/tablas/tablarender/tablarender.html para ver un tutorial detallado sobre el tema.

Si necesitas que el JTable contenga realmente el valor transformado en vez de el dato crudo, entonces es mejor un TableCellEditor. Ahi tú pones cual es el editor de la celda. Puedes hacer un editor que admita el dato crudo y cuando el JTable le pregunte, devuelve el resultado de aplicaar la función. En http://www.geocities.com/chuidiang/java/tablas/tablaeditor/tablaeditor.html tines un pequeño tutorial para el cell editor.

Se bueno