Red de conocimiento informático - Problemas con los teléfonos móviles - ¿Qué código se utiliza para imprimir archivos en VB y cómo escribir la declaración?

¿Qué código se utiliza para imprimir archivos en VB y cómo escribir la declaración?

Varios métodos de impresión en VB

1. Utilice el método de función de impresión simple PrintForm proporcionado por Visual Basic. Cuando aplica el método PrintForm de un formulario, Visual Basic envía el mapa de bits del formulario a la impresora actual. La ventaja de este enfoque es que casi no requiere programación, pero también tiene importantes inconvenientes. Lo más destacado es que cuando se imprimen gráficos de baja resolución en una impresora de alta resolución, los resultados son insatisfactorios y tienen alias. El siguiente código imprimirá el formulario en la impresora.

Private Sub Command1_Click() 'Imprimir usando PrintForm

Me.PrintForm 'Imprime el área visible del formulario

End Sub

2. Utilice objetos de impresora para resultados de alta resolución. Pero si desea producir una impresión compleja, la programación es más engorrosa. El objeto Impresora representa la impresora predeterminada del sistema. El objeto Impresora admite muchas propiedades y métodos admitidos por formularios y cuadros de gráficos. Los tres objetos tienen la capacidad de dibujar líneas y cuadros. Una aplicación puede utilizar el siguiente código para dibujar un cuadro de una pulgada cuadrada en un objeto Impresora. Está a dos pulgadas de la esquina superior izquierda. NOTA: La impresora mide la distancia en trozos. Hay 1440 twips por pulgada.

Printer.Line(2 *1440,2 *1440) -Step(1440,1440), ,B

La impresora, el formulario esclavo y el cuadro de gráficos tienen Circle, PaintPicture, Métodos Print, Pset, TextHeight, TextWidth. Con estos métodos, las aplicaciones pueden producir resultados de alta resolución para impresoras.

Para imprimir texto directamente, utilice el método Imprimir, consulte el siguiente código:

Printer.Print "Hello, China ComputerWorld!" ' Imprimir cadena

The Printer. El objeto también tiene Algunos formularios y cuadros de gráficos no tienen métodos:

NewPage le dice a la impresora que el programa ha terminado de enviar la página de salida actual y que el objeto Impresora debe comenzar una nueva página.

EndDoc le dice a VB que el programa ha terminado de crear el documento y VB debe enviarlo a una impresora física para imprimirlo.

KillDoc cancela el trabajo de impresión actual. Las aplicaciones deben finalizar cada trabajo de impresión especificado por EndDoc y KillDoc.

La propiedad Zoom se utiliza para definir el factor de escala para la salida impresa.

La propiedad Copias se utiliza para definir el número de copias a imprimir.

3. Utilice el método de transmitir directamente los datos a la impresora para su impresión. Hay dos formas de enviar datos a la impresora. La primera es con el método Print#, que es como escribir datos en un archivo. Otro método es escribir un puerto, pero en lugar de enviar texto, envía un lenguaje PCL específico. PCL significa Print Control Language. Es un lenguaje especial que utiliza códigos de escape para controlar acciones específicas de la impresora. Debido a que este método es demasiado engorroso, este artículo no lo presentará demasiado.

4. Si usa el control RichTextBox al programar, puede usar el método SelPrint del control para imprimir, que es muy simple de usar. El siguiente fragmento de código utiliza el método SelPrint del control RichTextBox para completar la impresión.

Private Sub Command3_Click() 'Método SelPrint

CommonDialog1.Flags=cdlPDReturnDC +cdlPDNoPageNums

Si RTF1.SelLength = 0 Entonces

' RTF1 es el control RichTextBox del formulario

CommonDialog1.Flags = CommonDialog1.Flags

+cdlPDAllPages

Else

CommonDialog1.Flags = CommonDialog1. Flags +

cdlPDSelection

Finalizar si

CommonDialog1.CancelError = True

En caso de error, reanudar siguiente

CommonDialog1 .ShowPrinter

Si Err.Number = cdlCancel entonces salga de Sub

Si Err.Number <> 0 entonces

Pitido

MsgBox "Error al imprimir el archivo."

&vbCrLf +Err.Description, vbOKOnly +vbExclamation,

"¡Error de impresión!"

Salir de Sub

End If

Printer.Print ""

RTF1.SelPrint CommonDialog1.hDC

'Imprime el área visible del control RTF1

End Sub

El código anterior primero realiza la configuración de entrada y luego imprime. Si no se requiere ninguna configuración, es más sencillo utilizar el siguiente código:

RTF1.SelPrint Printer.hDC

'Imprimir el área visible del control RTF1

5. Puede llamar al servicio de automatización OLE proporcionado por Word 97 en VB y utilizar la potente función de impresión de Word 97 para completar la impresión en VB. El siguiente código ilustra cómo se integra VB con Word.

Private Sub Command4_Click() ' Llamar a Word para imprimir

Atenuar objWord como objeto

Const CLASSOBJECT = "Word.Application"

En caso de error, vaya a objError

Establezca objWord = CreateObject(CLASSOBJECT)

objWord.Visible = True

objWord.Documents.Add

Con objWord

.ActiveDocument.Paragraphs.Last.Range.Bold = False

.ActiveDocument.Paragraphs.Last.Range.Font.Size =20

.ActiveDocument Paragraphs.Last.Range.Font.Name =

"黑体"

.ActiveDocument.Paragraphs.Last.Range.Font.ColorIndex==4

ActiveDocument.Paragraphs.Last.Range.Text =

"¡Soy un lector del mundo de la informática!"

Termina con

Clipboard.Clear

.

Clipboard.SetText

"¡Transfiere datos a WORD a través del portapapeles!"

objWord.Selection.Paste

objWord.PrintPreview = True 'Modo de vista previa

'objWord.PrintOut' ejecuta la impresión

'objWord.Quit' sale de Word

Salir de Sub

objError:

Si Err <> 429 Entonces

MsgBox Str $(Err) &Error $

Establecer objWord = Nothing

' Si no se puede crear el objeto de Word , salir

Salir del sub

De lo contrario

Continuar siguiente

Finalizar si

Fin del sub

6. Utilice VC para preparar el módulo DLL para completar la impresión. Llame a este módulo en VB e imprímalo usando métodos de programación mixtos. Dado que la programación de VC es engorrosa, no la discutiremos aquí.