una tutorial tablas tabla matriz imprimir fila ejemplo datos crear como codigo agregar java eclipse swt spreadsheet

java - tutorial - jtable a codigo



Una implementación más avanzada de tabla/hoja de cálculo SWT (8)

3 otros

NatTable

Grilla Ágil

Tabla Jaret

Estoy desarrollando una aplicación basada en la plataforma de cliente enriquecido de Eclipse que depende en gran medida del uso de tablas para mostrar y editar datos. Actualmente estoy usando las implementaciones SWT de Table y TableViewer.

Mis usuarios siempre se están quejando de que "no funciona como en Excel". En particular, no puedo seleccionar una sola celda dentro de una fila y todas las filas tienen la misma altura. Estoy buscando una implementación que aborde estos problemas.

Criterios:

  • Gratis (como en el habla y la cerveza - Soy un estudiante de doctorado y el programa es EPL)
  • SWT (las diversas soluciones para incluir swing en SWT no son muy buenas)

Editar:

Hasta ahora tengo las siguientes sugerencias:

Lamentablemente, una mirada superficial no proporciona información sobre las diferencias entre estas implementaciones. Por supuesto, buscaré soluciones e informaré aquí, pero ¿tiene algún consejo sobre el tema?


Mira el componente Nebula Grid . Todavía se está desarrollando, por lo que no está 100% maduro, pero parece satisfacer tus necesidades.


KTable es maduro y muy personalizable. Lo usé para proporcionar una experiencia muy buena para mi aplicación SWT.


KTable es similar a JTable.

Nebula Grid encaja bien con el paradigma de Widget + Viewer. Pude migrar de la tabla SWT normal a esto en cuestión de minutos.


NatTable se tiende a proporcionar un alto rendimiento y gran capacidad de volumen


He estado usando el componente Nebula Grid , como se mencionó anteriormente, en un proyecto en el trabajo, y en general tengo que decir que creo que funciona bastante bien. Hay algunos problemas de rendimiento, y aún no están terminados, pero es bastante fácil adoptar cualquier forma que se necesite y hace un buen trabajo con las tablas de datos de estilo de hoja de cálculo. Puede tener encabezados de columna y fila, grupos de columnas, representadores de celdas personalizados, etc.

Mi problema más reciente es que las alturas de las líneas se calculan correctamente, y no parece que haya mucho desarrollo activo sucediendo en este momento, por lo que intentaré solucionarlo yo mismo.


Creo que SWT Matrix tiene las características que estás buscando.

Tiene un diseño simétrico, por lo que las filas y columnas tienen la misma representación, lo que significa que todas pueden ser seleccionadas, movidas, ocultas, redimensionadas, etc., como en Excel. La navegación y la selección de celdas también son excelentes. Y todos los gestos de teclas y mouse están vinculados a las mismas acciones que en spreadshits.

El componente es de fuente cerrada pero gratuito para uso privado y no comercial. Aún la etapa alfa en este punto, sin embargo.


NatTable es gratis, rápido y poderoso.

Desde que se hizo esta pregunta por primera vez, se ha convertido en parte del proyecto Eclipse Nebula. El desarrollo aún está activo.

La API es enorme. Un gran conjunto de ejemplos proporciona un código de muestra simple para comenzar.

Algunas bonitas funciones:

  • Puede manejar grandes conjuntos de datos sin problemas de rendimiento
  • Encabezados de fila
  • Cubriendo celdas
  • Mesa de árbol
  • Editores de celdas: texto, combo, casilla de verificación
  • Acciones estándar para copiar, exportar a Excel e imprimir.
  • Validación e indicación visual de valores inválidos
  • Edición multicelda
  • Decoradores de celdas
  • Persistir el estado del tamaño de la columna, orden, ocultación, clasificación, etc.

Ejecute los ejemplos para ver la velocidad y la potencia. Tenga en cuenta que debe agregar el plugin SWT a su classpath. Los ejemplos no lo incluyen. Aquí hay un ejemplo:

C:> java -cp C: / eclipse / plugins / org.eclipse.swt.win32.win32.x86_ VERSIÓN .jar; NatTableExamples-0.9.0.jar org.eclipse.nebula.widgets.nattable.examples.NatTableExamples

[Gracias a los carteles de años anteriores por mencionar NatTable. Esta respuesta proporciona una actualización y más información.]