Visual Basic - Elegir impresora

Life is soft - evento anual de software empresarial
   
Vista:

Elegir impresora

Publicado por Manuel (5 intervenciones) el 26/10/2009 16:58:31
Muy buenas y gracias de antemano por la atención, mi problema es el siguiente, tengo un programa de etiquetado y carteleria, el tema es que si el usuario elige un cartel, necesito que imprima por una HP Laser, y si imprime etiquetas por la impresora zebra de etiquetas,.

El caso es el siguiente, no utilizo el crystalreports y he visto un codigo ( set printer = printers(x)) que me dajaria elegir a mi como programador la impresora que quiero, pero a nivel usuario en cada ordenador que este instalado tendra diferentes impresoras, ¿hay alguna especie de Commondialog u otro interface q le permita al usuario ver las impresoras y elegir una?me parece que esta complicado el tema...

Saludos

Manu
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:Elegir impresora

Publicado por Pedro Luis (878 intervenciones) el 26/10/2009 18:19:27
Debes ir a Proyecto - Componentes y elegir Microsoft Common Dialog Control 6.0.
En las herramientas aparecera el control que pondras en el formulario, en tiempo de ejecucion no se verá .
En el momento que creas oportuno lo llamas CommonDialog1.ShowPrinter, y apareceran las impresoras que el usuario tiene disponibles.
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:Elegir impresora

Publicado por Manuel (5 intervenciones) el 26/10/2009 18:47:31
Muchisimas gracias Pedro Luis, implementare tu codigo a ver como nos queda, por mi cuenta segui mirando y se me ocurrio una sencilla solución igual de util pero bastante mas "cutre" que la tuya, que es crear un formulario modal con una comboBox y un boton con el siguiente codigo

Private Sub Form_Load()
Dim X As Printer

CmbImp.Clear

For Each X In Printers
CmbImp.AddItem X.DeviceName
Next
CmbImp.ListIndex = 0
End Sub

Private Sub bTnOk_Click()
Set Printer = Printers(CmbImp.ListIndex)
Unload Me
End Sub

Lo dicho,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

RE:Elegir impresora

Publicado por Manuel...de nuevo (5 intervenciones) el 26/10/2009 18:51:25
lo que tambien me ayudaria es saber como saber que impresora tiene predeterminada windows para ponerla yo como predeterminada en la Combo Box,¿ sabeis que comando me devuelve la impresora determinada?
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

Esta es

Publicado por Quique (12 intervenciones) el 26/10/2009 20:01:06
Es la propiedad DeviceName del objeto Printer:
Printer.DeviceName
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