• Domingo 22 de Diciembre de 2024, 17:49

Autor Tema:  Propiedades De Impresion  (Leído 1788 veces)

arley

  • Nuevo Miembro
  • *
  • Mensajes: 13
    • Ver Perfil
Propiedades De Impresion
« en: Martes 18 de Septiembre de 2007, 06:21 »
0
Hola necesito que alguien me ayude con un codigo de visual basic de modo que al yo querer imprimir algo primero me muestre las propiedades de la impresora y pueda escoger tipo de papel, calidad de impresion, numero de copias y todo lo relacionado con dicha impresion les agradezco de antemano.

MUCHAS GRACIAS... :rolleyes:

cpmario

  • Miembro HIPER activo
  • ****
  • Mensajes: 629
    • Ver Perfil
    • http://www.cpimario.com
Re: Propiedades De Impresion
« Respuesta #1 en: Martes 18 de Septiembre de 2007, 08:12 »
0
Activa en componentes un control "Microsoft Common Dialog" y colócalo en una forma y dale el siguiente nombre cdlMain.
Después llamas a ese control con lo siguiente:

Código: Text
  1.     cdlMain.CancelError = True
  2.     cdlMain.Flags = cdlPDPrintSetup
  3.     cdlMain.ShowPrinter
  4.  
  5.  
:comp:

arley

  • Nuevo Miembro
  • *
  • Mensajes: 13
    • Ver Perfil
Re: Propiedades De Impresion
« Respuesta #2 en: Jueves 20 de Septiembre de 2007, 04:56 »
0
Cita de: "cpmario"
Activa en componentes un control "Microsoft Common Dialog" y colócalo en una forma y dale el siguiente nombre cdlMain.
Después llamas a ese control con lo siguiente:

Código: Text
  1.     cdlMain.CancelError = True
  2.     cdlMain.Flags = cdlPDPrintSetup
  3.     cdlMain.ShowPrinter
  4.  
  5.  
:comp:
Muchas gracias por el codigo, pero sin embargo no me imprime lo que le digo en las propiedades si me puedes ayudar te lo agradezco. :D

cpmario

  • Miembro HIPER activo
  • ****
  • Mensajes: 629
    • Ver Perfil
    • http://www.cpimario.com
Re: Propiedades De Impresion
« Respuesta #3 en: Jueves 20 de Septiembre de 2007, 05:29 »
0
Te proporciono una rutina que imprime un reporte. Te dará una idea de como usar los comandos de impresión.
Código: Text
  1.  
  2. Sub PrintIncap(blnPrintDx As Boolean)
  3.     Dim strPr As String
  4.     Dim intCnt As Integer
  5.     Dim intPrintTab As Integer
  6.     Dim strTexto As String
  7.     On Error GoTo ErrorcmdPrint
  8.     cdlMain.CancelError = True
  9.     cdlMain.Flags = cdlPDPrintSetup
  10.     cdlMain.ShowPrinter
  11.     Screen.MousePointer = vbHourglass
  12.     cmdPrintIncap.Enabled = False
  13.     For intCnt = 1 To 3
  14.         strPr = strPr & vbCrLf
  15.     Next intCnt
  16.     Printer.Print strPr
  17.     Printer.Font = "Arial"
  18.     Printer.FontSize = 14
  19.     Printer.Font.Bold = True
  20.     intPrintTab = 12
  21.     Printer.Print Tab(intPrintTab); "INSTITUTO MEXICANO DEL SEGURO SOCIAL"
  22.     Printer.Print Tab(intPrintTab); "Reporte de Datos de Incapacidad"
  23.     Printer.Print
  24.     Printer.Font = "Courier New"
  25.     Printer.FontSize = 10
  26.     Printer.Font.Bold = False
  27.     intPrintTab = 15
  28.     Printer.Print Tab(intPrintTab); "Número de serie: ";: Printer.Font.Bold = True: Printer.Print txtSerie: Printer.Font.Bold = False
  29.     Printer.Print Tab(intPrintTab); "Nombre de paciente: ";: Printer.Font.Bold = True: Printer.Print txtNombre.Text: Printer.Font.Bold = False
  30.     Printer.Print Tab(intPrintTab); "Afiliación: ";: Printer.Font.Bold = True: Printer.Print txtAfiliación.Text: Printer.Font.Bold = False
  31.     Printer.Print Tab(intPrintTab); "Médicos: " & txtMédicos.Text
  32.     Printer.Print Tab(intPrintTab); "Matrícula: " & txtMatrícula.Text
  33.     If blnPrintDx Then
  34.         strTexto = WordWrap(txtDiagnóstico.Text, 60)
  35.         Printer.Print Tab(intPrintTab); "Diagnóstico: " & strTexto
  36.     End If
  37.     Printer.Print Tab(intPrintTab); "Días de incapacidad: ";: Printer.Font.Bold = True: Printer.Print txtDiasIncap.Text: Printer.Font.Bold = False
  38.     Printer.Print&#59; Tab(intPrintTab); "A partir de: ";: Printer.Font.Bold = True: Printer.Print txtAPartir.Text: Printer.Font.Bold = False
  39.     Printer.Print&#59; Tab(intPrintTab); "Fecha de expedición: " & txtFechaExpedición.Text
  40.     Printer.Print Tab(intPrintTab); "Fecha de captura: " & txtFechaCaptura.Text
  41.     If txtRamo.Text = "EG" Then
  42.         strPr = "ENFERMEDAD GENERAL"
  43.     ElseIf txtRamo.Text = "MA" Then
  44.         strPr = "MATERNIDAD"
  45.     ElseIf txtRamo.Text = "RT" Then
  46.         strPr = "RIESGO DE TRABAJO"
  47.     ElseIf txtRamo.Text = "PR" Then
  48.         strPr = "PROBABLE RIESGO DE TRABAJO"
  49.     End If
  50.     Printer.Print Tab(intPrintTab); "Ramo: " & strPr
  51.     If txtMaternidad.Text = "PRE" Then
  52.         strPr = "PRENATAL"
  53.     ElseIf txtRamo.Text = "ENL" Then
  54.         strPr = "ENLACE"
  55.     ElseIf txtRamo.Text = "POS" Then
  56.         strPr = "POSNATAL"
  57.     Else
  58.         strPr = ""
  59.     End If
  60.     If strPr <> "" Then
  61.         Printer.Print Tab(intPrintTab); "Maternidad: " & strPr
  62.     End If
  63.     If txtTipo.Text = "INI" Then
  64.         strPr = "INICIAL"
  65.     ElseIf txtTipo.Text = "SUB" Then
  66.         strPr = "SUBSECUENTE"
  67.     ElseIf txtTipo.Text = "REC" Then
  68.         strPr = "RECAÍDA"
  69.     ElseIf txtTipo.Text = "CAN" Then
  70.         strPr = "CANCELADA"
  71.     End If
  72.     Printer.Print Tab(intPrintTab); "Tipo: " & strPr
  73.     If blnPrintDx Then
  74.         Printer.Print Tab(intPrintTab); "Comentario: " & txtComentario.Text
  75.     End If
  76.     If txtRamo.Text = "PR" Or txtRamo.Text = "RT" Then
  77.         Printer.Print Tab(intPrintTab); "ST1: " & txtST1.Text
  78.         Printer.Print Tab(intPrintTab); "ST2: " & txtST2.Text
  79.         Printer.Print Tab(intPrintTab); "Nota médica: " & txtNota.Text
  80.     End If
  81.     If blnPrintDx Then
  82.         Printer.Print Tab(intPrintTab); "Observaciones: " & txtObsv.Text
  83.     End If
  84.     If txtPuesto.Text <> "" Then
  85.         Printer.Print Tab(intPrintTab); "Puesto de trabajo: " & txtPuesto.Text
  86.     End If
  87.     If txtIMSS.Text <> "" Then
  88.         Printer.Print Tab(intPrintTab); "Trabajador IMSS: " & txtIMSS.Text
  89.     End If
  90.    
  91.     Printer.EndDoc
  92.     cmdPrintIncap.Enabled = True
  93.     Screen.MousePointer = vbDefault
  94. Exit Sub
  95. ErrorcmdPrint:
  96.     If Err <> cdlCancel Then
  97.         MsgBox "Error al imprimir datos. Revise su impresora." & vbCrLf & Err.Description, vbCritical, gstrAppTitle
  98.         Err.Clear
  99.     End If
  100.     cmdPrintIncap.Enabled = True
  101.     Screen.MousePointer = vbDefault
  102. Exit Sub
  103. End Sub
  104.  
Espero te sirva.
 :comp:

arley

  • Nuevo Miembro
  • *
  • Mensajes: 13
    • Ver Perfil
Re: Propiedades De Impresion
« Respuesta #4 en: Sábado 22 de Septiembre de 2007, 05:59 »
0
Cita de: "cpmario"
Te proporciono una rutina que imprime un reporte. Te dará una idea de como usar los comandos de impresión.
Código: Text
  1.  
  2. Sub PrintIncap(blnPrintDx As Boolean)
  3.     Dim strPr As String
  4.     Dim intCnt As Integer
  5.     Dim intPrintTab As Integer
  6.     Dim strTexto As String
  7.     On Error GoTo ErrorcmdPrint
  8.     cdlMain.CancelError = True
  9.     cdlMain.Flags = cdlPDPrintSetup
  10.     cdlMain.ShowPrinter
  11.     Screen.MousePointer = vbHourglass
  12.     cmdPrintIncap.Enabled = False
  13.     For intCnt = 1 To 3
  14.         strPr = strPr & vbCrLf
  15.     Next intCnt
  16.     Printer.Print strPr
  17.     Printer.Font = "Arial"
  18.     Printer.FontSize = 14
  19.     Printer.Font.Bold = True
  20.     intPrintTab = 12
  21.     Printer.Print Tab(intPrintTab); "INSTITUTO MEXICANO DEL SEGURO SOCIAL"
  22.     Printer.Print Tab(intPrintTab); "Reporte de Datos de Incapacidad"
  23.     Printer.Print
  24.     Printer.Font = "Courier New"
  25.     Printer.FontSize = 10
  26.     Printer.Font.Bold = False
  27.     intPrintTab = 15
  28.     Printer.Print Tab(intPrintTab); "Número de serie: ";: Printer.Font.Bold = True: Printer.Print txtSerie: Printer.Font.Bold = False
  29.     Printer.Print Tab(intPrintTab); "Nombre de paciente: ";: Printer.Font.Bold = True: Printer.Print txtNombre.Text: Printer.Font.Bold = False
  30.     Printer.Print Tab(intPrintTab); "Afiliación: ";: Printer.Font.Bold = True: Printer.Print txtAfiliación.Text: Printer.Font.Bold = False
  31.     Printer.Print Tab(intPrintTab); "Médicos: " & txtMédicos.Text
  32.     Printer.Print Tab(intPrintTab); "Matrícula: " & txtMatrícula.Text
  33.     If blnPrintDx Then
  34.         strTexto = WordWrap(txtDiagnóstico.Text, 60)
  35.         Printer.Print Tab(intPrintTab); "Diagnóstico: " & strTexto
  36.     End If
  37.     Printer.Print Tab(intPrintTab); "Días de incapacidad: ";: Printer.Font.Bold = True: Printer.Print txtDiasIncap.Text: Printer.Font.Bold = False
  38.     Printer.Print; Tab(intPrintTab); "A partir de: ";: Printer.Font.Bold = True: Printer.Print txtAPartir.Text: Printer.Font.Bold = False
  39.     Printer.Print; Tab(intPrintTab); "Fecha de expedición: " & txtFechaExpedición.Text
  40.     Printer.Print Tab(intPrintTab); "Fecha de captura: " & txtFechaCaptura.Text
  41.     If txtRamo.Text = "EG" Then
  42.         strPr = "ENFERMEDAD GENERAL"
  43.     ElseIf txtRamo.Text = "MA" Then
  44.         strPr = "MATERNIDAD"
  45.     ElseIf txtRamo.Text = "RT" Then
  46.         strPr = "RIESGO DE TRABAJO"
  47.     ElseIf txtRamo.Text = "PR" Then
  48.         strPr = "PROBABLE RIESGO DE TRABAJO"
  49.     End If
  50.     Printer.Print Tab(intPrintTab); "Ramo: " & strPr
  51.     If txtMaternidad.Text = "PRE" Then
  52.         strPr = "PRENATAL"
  53.     ElseIf txtRamo.Text = "ENL" Then
  54.         strPr = "ENLACE"
  55.     ElseIf txtRamo.Text = "POS" Then
  56.         strPr = "POSNATAL"
  57.     Else
  58.         strPr = ""
  59.     End If
  60.     If strPr <> "" Then
  61.         Printer.Print Tab(intPrintTab); "Maternidad: " & strPr
  62.     End If
  63.     If txtTipo.Text = "INI" Then
  64.         strPr = "INICIAL"
  65.     ElseIf txtTipo.Text = "SUB" Then
  66.         strPr = "SUBSECUENTE"
  67.     ElseIf txtTipo.Text = "REC" Then
  68.         strPr = "RECAÍDA"
  69.     ElseIf txtTipo.Text = "CAN" Then
  70.         strPr = "CANCELADA"
  71.     End If
  72.     Printer.Print Tab(intPrintTab); "Tipo: " & strPr
  73.     If blnPrintDx Then
  74.         Printer.Print Tab(intPrintTab); "Comentario: " & txtComentario.Text
  75.     End If
  76.     If txtRamo.Text = "PR" Or txtRamo.Text = "RT" Then
  77.         Printer.Print Tab(intPrintTab); "ST1: " & txtST1.Text
  78.         Printer.Print Tab(intPrintTab); "ST2: " & txtST2.Text
  79.         Printer.Print Tab(intPrintTab); "Nota médica: " & txtNota.Text
  80.     End If
  81.     If blnPrintDx Then
  82.         Printer.Print Tab(intPrintTab); "Observaciones: " & txtObsv.Text
  83.     End If
  84.     If txtPuesto.Text <> "" Then
  85.         Printer.Print Tab(intPrintTab); "Puesto de trabajo: " & txtPuesto.Text
  86.     End If
  87.     If txtIMSS.Text <> "" Then
  88.         Printer.Print Tab(intPrintTab); "Trabajador IMSS: " & txtIMSS.Text
  89.     End If
  90.   
  91.     Printer.EndDoc
  92.     cmdPrintIncap.Enabled = True
  93.     Screen.MousePointer = vbDefault
  94. Exit Sub
  95. ErrorcmdPrint:
  96.     If Err <> cdlCancel Then
  97.         MsgBox "Error al imprimir datos. Revise su impresora." & vbCrLf & Err.Description, vbCritical, gstrAppTitle
  98.         Err.Clear
  99.     End If
  100.     cmdPrintIncap.Enabled = True
  101.     Screen.MousePointer = vbDefault
  102. Exit Sub
  103. End Sub
  104.  
Espero te sirva.
 :comp:
Gracias por el codigo que me has enviado, pero hay un problema los cambios que hago en las propiedades de la impresora no se guardan ya que si selecciono que deseo varias copias iguales y que la impresion sea en borrador no lo hace sino que simplemente imprime una hoja normal.

Si me puedes ayudar te lo Agradezco. :D

cpmario

  • Miembro HIPER activo
  • ****
  • Mensajes: 629
    • Ver Perfil
    • http://www.cpimario.com
Re: Propiedades De Impresion
« Respuesta #5 en: Domingo 23 de Septiembre de 2007, 01:48 »
0
Siempre puedes saber que propiedades tiene un control de ls siguiente manera.
En modo de diseño del programa escribe el nombre del control Common Dialog por ejemplo:

Código: Text
  1. cdlMain
  2.  

Al momento de colocar el punto "cdlMain." VB6 te muestra un listado de propiedades, entre ellas encontrarás  "Copies" la seleccionas y después colocas el número de copias que deseas. Deberás dejar las líneas de código como las que siguen:

Código: Text
  1. intCntCopies = 10
  2. cdlMain.Copies = intCntCopies
  3.  
Lo que significa que quieres 10 copias del documento.

Si lo que deseas saber es cuantas copias seleccionó el usuario entonces puedes obtenerlo de la siguiente manera:

Código: Text
  1.     intCntCopies = cdlMain.Copies
  2.  
  3.  
Así funciona con otras propiedades. Revisa la ayuda de VB6.
 :comp:

arley

  • Nuevo Miembro
  • *
  • Mensajes: 13
    • Ver Perfil
Re: Propiedades De Impresion
« Respuesta #6 en: Martes 25 de Septiembre de 2007, 03:11 »
0
Cita de: "arley"
Hola necesito que alguien me ayude con un codigo de visual basic de modo que al yo querer imprimir algo primero me muestre las propiedades de la impresora y pueda escoger tipo de papel, calidad de impresion, numero de copias y todo lo relacionado con dicha impresion les agradezco de antemano.

MUCHAS GRACIAS... :rolleyes:
Es que lo que yo necesito es que despues de haber configurado la impresora está me imprima con toda la configuracion que le he hecho ya sea que yo quiera darle que imprima con una calidad optima de fotografia, en borrador o que deseo varias hojas con la misma impresion

Ayudenmen :D