elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recopilación Tutoriales y Manuales Hacking, Seguridad, Privacidad, Hardware, etc


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  JTable con Checkbox
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 [2] 3 Ir Abajo Respuesta Imprimir
Autor Tema: JTable con Checkbox  (Leído 33,307 veces)
Blitzkrieg'


Desconectado Desconectado

Mensajes: 546


print('Hi there')


Ver Perfil WWW
Re: JTable con Checkbox
« Respuesta #10 en: 27 Noviembre 2009, 18:51 pm »

Pense que estaba trabajando con GUI Builder -.-

y en Netbeans tambien puedes trabajar con solo codigo :)


En línea



egyware


Desconectado Desconectado

Mensajes: 526



Ver Perfil WWW
Re: JTable con Checkbox
« Respuesta #11 en: 28 Noviembre 2009, 03:24 am »

Hola
Hechale un vistaso a este tutorial de SUN, me sirvio bastante para hacer algo. Espero que te sirva



En línea

alzehimer_cerebral


Desconectado Desconectado

Mensajes: 513



Ver Perfil WWW
Re: JTable con Checkbox
« Respuesta #12 en: 29 Noviembre 2009, 17:44 pm »

Okis gracias por vuestros aportes y al final he optado por empezar de nuevo a construir mi gui todo a traves del asistente.  Lo unico que he creado un boton Open y el asistente me crea el metodo openActionPerformed(java.awt.event.ActionEvent evt), hasta aqui todo bien ya que dicho metodo me sirve para codificar la accion de pinchar sobre el boton.  Mi duda viene cuando creo un segundo boton Create y me crea 2 metodos esta vez: createActionPerformed(java.awt.event.ActionEvent evt) y createMouseClicked(java.awt.event.MouseEvent evt), mi duda es porque me crea el nuevo metodo de click del raton??  Los botones son identicos pero los metodos de las acciones son diferentes...  Que diferencia hay entre los metodos createActionPerformed y createMouseClicked??

La clase que va pintar la gui que tiene mas sentido que sea una extendida de Jpanel o de JFrame??

A ver si alguien me puede echar un cable..

Un saludo.

alzehimer_cerebral
« Última modificación: 29 Noviembre 2009, 18:23 pm por alzehimer_cerebral » En línea

Servicios Informaticos Valencia - www.ag-solutions.es
Mi blog - www.alvarogarciasolano.com
egyware


Desconectado Desconectado

Mensajes: 526



Ver Perfil WWW
Re: JTable con Checkbox
« Respuesta #13 en: 29 Noviembre 2009, 18:34 pm »

Solo usa el createActionPerformed(java.awt.event.ActionEvent evt), ese es el que se llama cuando la acion es realizada, apretar enter en un textfield, hacer click en un boton,.... El otro es mas para revisar si hiciste click dentro del evento idependientemente si ya hiciste click (click up, click down) bueno, usa solo el ActionPerformed.
En línea

Debci
Wiki

Desconectado Desconectado

Mensajes: 2.021


Actualizate o muere!


Ver Perfil WWW
Re: JTable con Checkbox
« Respuesta #14 en: 29 Noviembre 2009, 19:47 pm »

Pense que estaba trabajando con GUI Builder -.-

y en Netbeans tambien puedes trabajar con solo codigo :)
Jeje te pilla de fresco xD

Saludos
En línea

alzehimer_cerebral


Desconectado Desconectado

Mensajes: 513



Ver Perfil WWW
Re: JTable con Checkbox
« Respuesta #15 en: 30 Noviembre 2009, 18:40 pm »

Gracias a todos por vuestros aportes, gracias a ello ya he avanzado bastante con mi modelo de tabla.  Ya logro cargar los datos en ella de forma correcta, pero como ya os he comentado la ultima columna es un checkbox y por lo tanto ahora tengo que recoger la accion del usuario cuando click en ella y proceder a borrar la fila correspondiente.  He consultado la API y no veo metodos ni en TableModel ni en AbstractTableModel para el borrado de una fila en concreto de la tabla, por lo tanto deduzco que la tengo que programar yo segun mi modelo, es esto asi??

Tambien necesito un poco de orientacion para saber como regoger los clicks de los usuarios sobre las checkbox, ya que no se si se hace con los listeners o con el propio checkbox??  Haber si alguien me orienta un poco para poder seguir con la JTable...

He encontrado una clase que extiende AbstractTableModel con ArrayList que suelen ser mas eficientes que los Vectores, si alguien le interesa que me lo deje saber.

Un saludo.

alzehimer_cerebral
En línea

Servicios Informaticos Valencia - www.ag-solutions.es
Mi blog - www.alvarogarciasolano.com
Blitzkrieg'


Desconectado Desconectado

Mensajes: 546


print('Hi there')


Ver Perfil WWW
Re: JTable con Checkbox
« Respuesta #16 en: 1 Diciembre 2009, 00:03 am »

Que bueno que hayas podido avanzar  ;D
En línea



sapito169


Desconectado Desconectado

Mensajes: 628



Ver Perfil
Re: JTable con Checkbox
« Respuesta #17 en: 1 Diciembre 2009, 04:48 am »

Gracias a todos por vuestros aportes, gracias a ello ya he avanzado bastante con mi modelo de tabla.  Ya logro cargar los datos en ella de forma correcta, pero como ya os he comentado la ultima columna es un checkbox y por lo tanto ahora tengo que recoger la accion del usuario cuando click en ella y proceder a borrar la fila correspondiente.  He consultado la API y no veo metodos ni en TableModel ni en AbstractTableModel para el borrado de una fila en concreto de la tabla, por lo tanto deduzco que la tengo que programar yo segun mi modelo, es esto asi??

Tambien necesito un poco de orientacion para saber como regoger los clicks de los usuarios sobre las checkbox, ya que no se si se hace con los listeners o con el propio checkbox??  Haber si alguien me orienta un poco para poder seguir con la JTable...

He encontrado una clase que extiende AbstractTableModel con ArrayList que suelen ser mas eficientes que los Vectores, si alguien le interesa que me lo deje saber.

Un saludo.

alzehimer_cerebral

-efectivamente no existe metodo para eliminar una fila tu Debes crearla
-vector se deve usar para tamaños fijos o en su defecoto que sea muy dificil que alcanse su capasidad (tamaño maximo antes de incrementar de tamaño cosa que ase con muy mal rendimineto) el arraylist se usa cuando se le agrega muy constantemente y de forma inpredesible objetos en realidad es mas lento pero lo conpensa ya que no tiene una capasidad.

La razon de este conportamiento es devido a que el Vector no es mas que un Clase que englova en su interior un arreglo de objetos (los arreglos siempre tienen un tamaño fijo)en caso de que el arreglo de objetos del vector supere su tamaño fijo este crear un nuevo arreglo mas grande y pasara objeto por objeto al arreglo mas grande perdiendo tienpo en un bucle que cada ves sera mas grande y quien sabe cuantas veces se repetira ese proceso poniendo de ejemplo los objetos son como libros cada ves que los pones dentro de un Vector este se guarda dentro de un cajo enumerado siendo extremadamente facil y rapido encontrar el libro pero en algun momento te vas a quedar sin cajones y vas a tener que comprarte un estante mas grande y pasar libro por libro demorandote una eternidad. En canbio dentro del arraylist cada objeto que se guarada se guarda dentro de otro objeto este objeto a su ves guarda el objeto siguiente poniendolo de una manera practica cada objeto es como una persona esa persona cada ves que ingresa al Arraylist se agarra de la mano de la persona anterior asi una cantidad ilimitada de veces (siendo mas precisos asta que vote un error devido a la falta memoria)


-para poder escuchar lo que te dise el checkbox Debes crear una clase que inplemte el tablecelleditor o en su defecto una clase que herede y sobreescriba el AbstractCellEditor y a su ves inplemtente TableCellEditor
me da perese aserlo yo mismo asi que te mandare links de problemas muy paresifos
el truco es agregar un listener dentro del metodo getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column)
http://www.chuidiang.com/java/tablas/tablaeditor/EditorTabla.java.txt
http://www.javalobby.org/java/forums/t53618.html
http://www.exampledepot.com/egs/javax.swing.table/ValidateValue.html

otra forma diferente y mas practica

http://www.exampledepot.com/egs/javax.swing.table/ValueEvent.html




« Última modificación: 1 Diciembre 2009, 05:40 am por sapito169 » En línea

alzehimer_cerebral


Desconectado Desconectado

Mensajes: 513



Ver Perfil WWW
Re: JTable con Checkbox
« Respuesta #18 en: 4 Diciembre 2009, 19:16 pm »

Gracias sapito169 por la info tan detallada y los codigos tan utiles.  Se agredece este tipo de ayuda.

Un saludo.

alzehimer_cerebral
En línea

Servicios Informaticos Valencia - www.ag-solutions.es
Mi blog - www.alvarogarciasolano.com
alzehimer_cerebral


Desconectado Desconectado

Mensajes: 513



Ver Perfil WWW
Re: JTable con Checkbox
« Respuesta #19 en: 10 Diciembre 2009, 01:41 am »

Sigiendo el codigo del enlace: http://www.exampledepot.com/egs/javax.swing.table/CustEdit.html mi ejemplo...

Para mi ejemplo seria algo asi??

Código
  1. public class MyTableCellEditor extends AbstractCellEditor implements TableCellEditor {
  2.  
  3.    JCheckBox component = new JCheckBox();
  4.  
  5.  
  6.    // This method is called when editing is completed.
  7.    // It must return the new value to be stored in the cell.
  8.    public Object getCellEditorValue() {
  9.        Boolean aux;
  10.        if(component.isSelected())
  11.            aux=true;
  12.        else
  13.            aux=false;
  14.  
  15.        return aux;
  16.  
  17.    }
  18.  
  19.     // This method is called when a cell value is edited by the user
  20.    public Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column) {
  21.         // 'value' is value contained in the cell located at (rowIndex, vColIndex)
  22.  
  23.  
  24.        // isSelected true when if the cell is to be rendered with highlighting
  25.        if(isSelected){
  26.            //borrado de la fila??
  27.        }
  28.  
  29.        // Configure the component with the specified value
  30.  
  31.        if(value.equals("true")){
  32.          component.setSelected(true);
  33.  
  34.        }
  35.        else{
  36.          component.setSelected(false);
  37.  
  38.        }
  39.  
  40.  
  41.  
  42.        return component;
  43.  
  44.  
  45.    }

P.D No puedo hacerlo a traves de la extension de AbstractTableModel??? A lo mejor no hace falta tocar las clases que implementan TableCellEditor y esxtienden AbstractCellEditor???  A ver si alguien me puede guiar un poco porque ando perdidooooo.

Un saludo.

alzehimer_cerebral
« Última modificación: 10 Diciembre 2009, 01:43 am por alzehimer_cerebral » En línea

Servicios Informaticos Valencia - www.ag-solutions.es
Mi blog - www.alvarogarciasolano.com
Páginas: 1 [2] 3 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda con Jtable
Java
zenydark 1 3,160 Último mensaje 27 Diciembre 2010, 03:56 am
por 1mpuls0
jtable manejo
Java
geanca 3 4,329 Último mensaje 19 Febrero 2012, 16:13 pm
por jperezmonge
deshabilitar un jtable por completo
Java
josco 4 7,072 Último mensaje 4 Marzo 2012, 04:45 am
por josco
Crear JTable a mano
Java
Run.EXE 6 3,990 Último mensaje 20 Marzo 2013, 03:45 am
por Run.EXE
JTable sobre JTable
Java
CartosP 6 4,230 Último mensaje 18 Marzo 2018, 13:44 pm
por CartosP
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines