Foros del Web » Programación » Programación General » Visual Basic clásico »

Imprimir en forma horizontal

Estas en el tema de Imprimir en forma horizontal en el foro de Visual Basic clásico en Foros del Web. Hola amigos buen dia, pues aqui les presento un problema que me perturba mucho. estoy usando una aplicacion vb.net y utilizo la funcion printform pero ...
  #1 (permalink)  
Antiguo 06/01/2009, 12:21
 
Fecha de Ingreso: enero-2008
Mensajes: 181
Antigüedad: 6 años, 8 meses
Puntos: 1
De acuerdo Imprimir en forma horizontal

Hola amigos buen dia, pues aqui les presento un problema que me perturba mucho. estoy usando una aplicacion vb.net y utilizo la funcion printform pero no imprime la pagina completa es decir que mi form excede el limite del papel y pues me gustaria si podrian ayudarme sobre, como le puedo hacer para que me lo imprima en la hoja en forma horizontal o como le hago para imprimirlo con la funcion printdocument. les agradezco de antemano la atencion prestada y les envio un cordial saludo
  #2 (permalink)  
Antiguo 07/01/2009, 02:12
Colaborador
 
Fecha de Ingreso: enero-2008
Ubicación: Unas veces aquí, otras veces allí
Mensajes: 1.482
Antigüedad: 6 años, 8 meses
Puntos: 37
Respuesta: Imprimir en forma horizontal

Cita:
Iniciado por rishart Ver Mensaje
Hola amigos buen dia, pues aqui les presento un problema que me perturba mucho. estoy usando una aplicacion vb.net y utilizo la funcion printform pero no imprime la pagina completa es decir que mi form excede el limite del papel y pues me gustaria si podrian ayudarme sobre, como le puedo hacer para que me lo imprima en la hoja en forma horizontal o como le hago para imprimirlo con la funcion printdocument. les agradezco de antemano la atencion prestada y les envio un cordial saludo
Hola, buen día.

Para imprimir en horizontal con la clase PrintDocument:

Código:
Private Sub btnImprimir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnImprimir.Click
   PrintDocument1.DefaultPageSettings.Landscape = True
   PrintDocument1.Print()
End Sub
.
Saludos
  #3 (permalink)  
Antiguo 07/01/2009, 10:46
 
Fecha de Ingreso: enero-2008
Mensajes: 181
Antigüedad: 6 años, 8 meses
Puntos: 1
De acuerdo Respuesta: Imprimir en forma horizontal

Cita:
Iniciado por Avellaneda Ver Mensaje
Hola, buen día.

Para imprimir en horizontal con la clase PrintDocument:

Código:
Private Sub btnImprimir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnImprimir.Click
   PrintDocument1.DefaultPageSettings.Landscape = True
   PrintDocument1.Print()
End Sub
.
Saludos
Hola avellaneda muchas gracias por reponder pero uso el codigo que me proporcionaste y ya le agregue la funcion del printdocument pero si manda a imprimir pero no me imprime nada, a que se debe??

te agradezco de antemano toda la atencion prestada y te envio un cordial saludo
  #4 (permalink)  
Antiguo 07/01/2009, 11:15
Colaborador
 
Fecha de Ingreso: enero-2008
Ubicación: Unas veces aquí, otras veces allí
Mensajes: 1.482
Antigüedad: 6 años, 8 meses
Puntos: 37
Respuesta: Imprimir en forma horizontal

Cita:
Iniciado por rishart Ver Mensaje
Hola avellaneda muchas gracias por reponder pero uso el codigo que me proporcionaste y ya le agregue la funcion del printdocument pero si manda a imprimir pero no me imprime nada, a que se debe??

te agradezco de antemano toda la atencion prestada y te envio un cordial saludo
Hola, seguramente se deberá a que no le estás indicando lo que debe imprimir.

¿Qué pones en el evento PrintPage?

O mejor aún, ¿Qué es lo que quieres imprimir, el contenido de un control, un archivo de texto o el propio form?

Saludos
  #5 (permalink)  
Antiguo 07/01/2009, 11:24
 
Fecha de Ingreso: enero-2008
Mensajes: 181
Antigüedad: 6 años, 8 meses
Puntos: 1
De acuerdo Respuesta: Imprimir en forma horizontal

Cita:
Iniciado por Avellaneda Ver Mensaje
Hola, seguramente se deberá a que no le estás indicando lo que debe imprimir.

¿Qué pones en el evento PrintPage?

O mejor aún, ¿Qué es lo que quieres imprimir, el contenido de un control, un archivo de texto o el propio form?

Saludos
Hola avellaneda, pues en el evento printpage no le puse nada solo en el boton puse el codigo que me proporcionaste y lo que quiero imprimir es todo el contenido del form, que incluye varios text, lineas y grafias, por ello quisiera imprimir todo el form

saludos y gracias de antemano
  #6 (permalink)  
Antiguo 07/01/2009, 11:40
Colaborador
 
Fecha de Ingreso: enero-2008
Ubicación: Unas veces aquí, otras veces allí
Mensajes: 1.482
Antigüedad: 6 años, 8 meses
Puntos: 37
Respuesta: Imprimir en forma horizontal

Cita:
Iniciado por rishart Ver Mensaje
Hola avellaneda, pues en el evento printpage no le puse nada solo en el boton puse el codigo que me proporcionaste y lo que quiero imprimir es todo el contenido del form, que incluye varios text, lineas y grafias, por ello quisiera imprimir todo el form

saludos y gracias de antemano
Bien, mira si te vale este ejemplo:

Código:
#Region "ImprimirForm"

    Dim ElForm As Bitmap

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        CopiarPantalla()
        PrintDocument1.DefaultPageSettings.Landscape = True
        PrintDocument1.Print()
    End Sub

    Private Sub CopiarPantalla()
        Dim Grphs As Graphics = Me.CreateGraphics()
        ElForm = New Bitmap(Me.Size.Width, Me.Size.Height, Grphs)
        Dim memoryGraphics As Graphics = Graphics.FromImage(ElForm)
        memoryGraphics.CopyFromScreen(Me.Location.X, Me.Location.Y, 0, 0, Me.Size)
    End Sub

    Private Sub PrintDocument1_PrintPage(ByVal sender As System.Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles PrintDocument1.PrintPage
        e.Graphics.DrawImage(ElForm, 0, 0)
    End Sub
#End Region
saludos
  #7 (permalink)  
Antiguo 07/01/2009, 15:56
 
Fecha de Ingreso: enero-2008
Mensajes: 181
Antigüedad: 6 años, 8 meses
Puntos: 1
De acuerdo Respuesta: Imprimir en forma horizontal

Cita:
Iniciado por Avellaneda Ver Mensaje
Bien, mira si te vale este ejemplo:

Código:
#Region "ImprimirForm"

    Dim ElForm As Bitmap

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        CopiarPantalla()
        PrintDocument1.DefaultPageSettings.Landscape = True
        PrintDocument1.Print()
    End Sub

    Private Sub CopiarPantalla()
        Dim Grphs As Graphics = Me.CreateGraphics()
        ElForm = New Bitmap(Me.Size.Width, Me.Size.Height, Grphs)
        Dim memoryGraphics As Graphics = Graphics.FromImage(ElForm)
        memoryGraphics.CopyFromScreen(Me.Location.X, Me.Location.Y, 0, 0, Me.Size)
    End Sub

    Private Sub PrintDocument1_PrintPage(ByVal sender As System.Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles PrintDocument1.PrintPage
        e.Graphics.DrawImage(ElForm, 0, 0)
    End Sub
#End Region
saludos
excelente avellaneda muchisimas gracias funciono a la perfeccion. solo una pregunta mas y disculpa la molestias ocacionadas, se puede ocultar 3 botones es decir que no aparescan en la impresion, yo lo trate de hacer poniendo al boton como invisible pero aun asi me aparece. si no es mucha molestia podrias comentarme como hacerle... de antemano te agradezco y te envio un cordial saludo.
  #8 (permalink)  
Antiguo 08/01/2009, 03:00
Colaborador
 
Fecha de Ingreso: enero-2008
Ubicación: Unas veces aquí, otras veces allí
Mensajes: 1.482
Antigüedad: 6 años, 8 meses
Puntos: 37
Respuesta: Imprimir en forma horizontal

Cita:
Iniciado por rishart Ver Mensaje
excelente avellaneda muchisimas gracias funciono a la perfeccion. solo una pregunta mas y disculpa la molestias ocacionadas, se puede ocultar 3 botones es decir que no aparescan en la impresion, yo lo trate de hacer poniendo al boton como invisible pero aun asi me aparece. si no es mucha molestia podrias comentarme como hacerle... de antemano te agradezco y te envio un cordial saludo.
Hola, sí es así como dices, poniendo los botones en invisible. Si no te funciona es que quizás lo estás poniendo en un procedimiento que no es el correcto.

Debes cambiar la propiedad en el evento que llama a imprimir justo antes del sub CopiarPantalla() y después de imprimir volverlos a hacer visibles.

Sería así:

Código:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Button1.Visible = False
        Button2.Visible = False
        CopiarPantalla()
        PrintDocument1.DefaultPageSettings.Landscape = True
        PrintDocument1.Print()
        Button1.Visible = True
        Button2.Visible = True
    End Sub
Suerte!!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:54.
SEO by vBSEO 3.3.2