
| |||
![]() 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 ![]() |
| |||
![]() Cita: 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??
Iniciado por Avellaneda ![]() Hola, buen día. Para imprimir en horizontal con la clase PrintDocument:
Código:
Saludos 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 . ![]() te agradezco de antemano toda la atencion prestada y te envio un cordial saludo ![]() |
| |||
Respuesta: Imprimir en forma horizontal Cita: 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? ![]() |
| |||
![]() Cita: 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 formsaludos y gracias de antemano |
| |||
Respuesta: Imprimir en forma horizontal Cita: Bien, mira si te vale este ejemplo:
Iniciado por rishart ![]() 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
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 ![]() |
| |||
![]() Cita: 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.
Iniciado por Avellaneda ![]() 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 ![]() ![]() |
| |||
Respuesta: Imprimir en forma horizontal Cita: 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.
Iniciado por rishart ![]() 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. ![]() 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 ![]() |