Visual Basic - Imprimir un PictureBox

Life is soft - evento anual de software empresarial
 
Vista:

Imprimir un PictureBox

Publicado por Loud_in (110 intervenciones) el 18/07/2006 23:07:56
Hola, gracias por leer

Deseo imprimir un objeto PictureBox que contiene varios objetos dentro de el. como Shape, Label y un RichTextBox. el codigo que anexo al final, lo llega a imprimir. sin embargo, depende de la impresora. como en la mia con la que realizo pruebas. sin embargo, donde debe funcionar con los clientes, no imprime.

la ayuda que necesito es que todo el contenido del PictureBox, imprima en la impresora que yo previamente, le pueda seleccionar. ya que el ejemplo anterior, imprime sobre la impresora predeterminada.

La variable varFormularioOperador, solo indica el picture que deseo imprimir.

On Error Resume Next
Formulario(varFormularioOperador).AutoRedraw = True
rv = SendMessage(Formulario(varFormularioOperador).hwnd, WM_PAINT, Formulario(varFormularioOperador).hDC, 0)
rv = SendMessage(Formulario(varFormularioOperador).hwnd, WM_PRINT, Formulario(varFormularioOperador).hDC, _
PRF_CHILDREN + PRF_CLIENT + PRF_OWNED)
Formulario(varFormularioOperador).Picture = Formulario(varFormularioOperador).Image
Formulario(varFormularioOperador).AutoRedraw = False

Printer.Print ""
Printer.PaintPicture Formulario(varFormularioOperador).Picture, 0, 0
Printer.EndDoc

Gracias. Pdata: el codigo de arriba, me lo dio una vez SUNCO, en realidad no lo entiendo. pero en las pruebas que yo realizo, este codigo, me ha funcionado
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Imprimir un PictureBox

Publicado por LLE (136 intervenciones) el 19/07/2006 19:49:29
Hola, Ese codigo me dio error, en el primer sendmessage, en el ultimo parametro de lparam as any, tira error 13
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Imprimir un PictureBox

Publicado por Loud_in (110 intervenciones) el 19/07/2006 21:00:51
Gracias por responder.

Sí, tienes razón. Hace falta las declaraciones

Private Const twipFactor = 1440
Private Const WM_PAINT = &HF
Private Const WM_PRINT = &H317
Private Const PRF_CLIENT = &H4& ' Draw the window's client area.
Private Const PRF_CHILDREN = &H10& ' Draw all visible child windows.
Private Const PRF_OWNED = &H20& ' Draw all owned windows.

Private Declare Function SendMessage Lib "user32" Alias _
"SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, _
ByVal wParam As Long, ByVal lParam As Long) As Long

otra cosa. la variable varFormularioOperador, contiene valores de 0 a 5. En si son los Pictures que se llaman Formulario. La variable, me indica el picture que se debe mostrar y por ende los objetos que estan dentro de él.

Cualquier cosa, me comentas. de antemano Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar