jueves, 21 de octubre de 2010

Imprimir JTable desde Java


Les compartiré una sencilla manera de imprimr su tabla JTable. Para hacer esto no hay que complicarse la vida, la clase JTable tiene un metodo denominado print() el cual manda los datos mostrados actualmente en el JTable a la impresora.
Ahora un ejemplo pequeño sobre como implementarlo.


Supongamos que hemos llenado los datos de la grilla, tal como se muestra en la siguiente pantalla.

Como pueden ver en la pantalla tenemos nuestra grilla llena de datos, si se fijan en la parte superior izquierda existe un el icono Impresora, que en realidad es un JButton, a este le agregamos el un escuchador de eventos, e implementamos su metodo actionPerformed, donde implementaremos el envio de los datos a la impresora

jbtnImprimir.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                try {
            jtblDatos.print();//envia los datos de la tabla a la impresora
        } catch (PrinterException ex) {
            Logger.getLogger(MiFormulario.class.getName()).log(Level.SEVERE, null, ex);
        }
            }
        }); 

Java Tip : Esconder Columna en Swing JTable

Creacion de Aplicación Java J2SE Swing con Netbeans IDE 7

10 comentarios:

  1. podrías decirme como haces para que la tabla te salga de esa forma (como en la imagen con colores alternados en las filas). Gracias!

    ResponderEliminar
  2. Muy buen aportee yo me la estaba matando con los subreportes que nunca me salieron y asi es mucho mas facil

    Muchisimas gracias

    ResponderEliminar
  3. chekalo¡ muy buen aporte

    ResponderEliminar
  4. MUCHAS GRACIAS AMIGO

    ResponderEliminar
  5. Hola , Disculpen, Alguien sabe como imprimir los datos en determinados puntos de la hoja , por ejemplo para
    NOMBRE:___________________________
    DOMICILIO:____________________________
    FECHA DE NACIMIENTO, DÍA:______ MES:________ AÑO:_________

    y lograr que los resultados caigan sobre las líneas?
    Gracias anticipadas.

    ResponderEliminar
    Respuestas
    1. Eso se hace usando JasperReports, veré si publico un tuto rápido de ese tema para ayudarte.

      Eliminar
  6. Buen aporte. Me gustaria saber como hiciste esa tabla.

    ResponderEliminar
  7. Muy buen tu aporte.
    Me gusta mucho el estilo del formulario.
    ¿Como hiciste esa tabla? ¿Algun LookAndFeel o libreria?

    ResponderEliminar
    Respuestas
    1. La tablas no es un JTable sino un JXTable, dicho componente esta en las librerias de SwingX, y el LAF que utilice es lo que antes era Substance, que ahora ya no existe pero pero, gracias a Dios, alguien hizo un fork y ahora se denomina inbustantial.
      http://insubstantial.posterous.com/

      Eliminar

 
Powered by Blogger