begin process at 2012 02 13 23:02:37
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Imprimante

 > CHOIX IMPRIMANTE SANS COMMONDIALOG

CHOIX IMPRIMANTE SANS COMMONDIALOG


 Information sur la source

Note :
8 / 10 - par 1 personne
8,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Imprimante Classé sous :imprimer, choix, commondialog, defaut Niveau :Débutant Date de création :31/07/2006 Vu :13 540

Auteur : DJALEMBA

Ecrire un message privé
Commentaire sur cette source (4)
Ajouter un commentaire et/ou une note

 Description

Permet de choir l'imprimante de son choix sans commondialog.
Pourquoi ? parce que je trouvais trop compliqué la gestion des imprimantes par défaut et qu'il est difficile de récupérer l'info de l'imprimante choisie et de l'affecter à l'objet printer.
Biensur, cet objet peut évoluer très simplement en y ajoutant le nb de pages, de tel page à telle page etc. mais je n'en avais pas besoin.

Source

  • 'dans une form
  • 'ajouter un combobox CbPrinters en mode dropdownlist
  • 'ajouter un bouton CmdPrint
  • Dim TbPrinter() As Object
  • Private Sub CmdPrint_Click()
  • 'envoie la commande dimpression sur l'imprimante sélectionnée
  • FrmConcentrations.Imprimer TbPrinter(CbPrinters.ListIndex)
  • Debug.Print CbPrinters.ListIndex
  • Unload Me
  • End Sub
  • Private Sub Form_Load()
  • CbPrinters.Clear
  • Dim X As Printer
  • 'redimmensionne le tableau en fct du nb imprimantes
  • ReDim TbPrinter(0 To Printers.Count - 1)
  • Debug.Print "nb imprimantes : " & Printers.Count
  • Dim NbPrinter As Integer, SelPrinter As Integer
  • For Each X In Printers
  • CbPrinters.AddItem X.DeviceName
  • Set TbPrinter(NbPrinter) = X
  • NbPrinter = NbPrinter + 1
  • Next
  • 'gere si pas d'imprimante
  • If Printers.Count = 0 Then
  • MsgBox "Pas d'imprimante trouvée. Opération annulée.", vbCritical, "Erreur d'impression"
  • Exit Sub
  • End If
  • 'selectionne l'imprimante par défaut actuelle dans la liste
  • CbPrinters.Text = Printer.DeviceName
  • End Sub
  • Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
  • 'annule l'impression
  • Unload Me
  • End Sub
  • Sub Imprimer(Imprimante)
  • 'Debug.Print Imprimante
  • Set Printer = Imprimante
  • On Error GoTo err:
  • 'imprimer ici
  • printer.print "TEST"
  • Printer.EndDoc
  • Exit Sub
  • err:
  • MsgBox "Problème d'impression : Récupération impossible des données ou imprimante indisponible.", vbCritical, "Erreur"
  • end sub
'dans une form
'ajouter un combobox CbPrinters en mode dropdownlist
'ajouter un bouton CmdPrint

Dim TbPrinter() As Object

Private Sub CmdPrint_Click()
'envoie la commande dimpression sur l'imprimante sélectionnée
FrmConcentrations.Imprimer TbPrinter(CbPrinters.ListIndex)
Debug.Print CbPrinters.ListIndex
Unload Me
End Sub

Private Sub Form_Load()

CbPrinters.Clear
Dim X As Printer
'redimmensionne le tableau en fct du nb imprimantes
ReDim TbPrinter(0 To Printers.Count - 1)
Debug.Print "nb imprimantes : " & Printers.Count
Dim NbPrinter As Integer, SelPrinter As Integer
For Each X In Printers
   CbPrinters.AddItem X.DeviceName
   Set TbPrinter(NbPrinter) = X
   NbPrinter = NbPrinter + 1
Next
'gere si pas d'imprimante
If Printers.Count = 0 Then
    MsgBox "Pas d'imprimante trouvée. Opération annulée.", vbCritical, "Erreur d'impression"
    Exit Sub
End If
'selectionne l'imprimante par défaut actuelle dans la liste
CbPrinters.Text = Printer.DeviceName
End Sub

Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
'annule l'impression
Unload Me
End Sub

Sub Imprimer(Imprimante)
'Debug.Print Imprimante
Set Printer = Imprimante

On Error GoTo err:
'imprimer ici
printer.print "TEST"

Printer.EndDoc
Exit Sub

err:
MsgBox "Problème d'impression : Récupération impossible des données ou imprimante indisponible.", vbCritical, "Erreur"

end sub



 Sources du même auteur

DONNÉES DU CALENDRIER
Source avec Zip YACHT, JOUEUR VIRTUEL, ALGO À AMÉLIORER BIENSUR.

 Sources de la même categorie

Source avec Zip Source avec une capture Source .NET (Dotnet) PARAMETRES_IMPRIMANTE par Le Pivert
Source avec Zip Source .NET (Dotnet) IMPRESSION FACILE EN ÉVITANT LES BUGS DU FRAMEWORK par circular
Source avec Zip Source .NET (Dotnet) CLASSE POUR AJOUTER/CONNECTER/DECONNECTER UNE IMPRIMANTE RÉS... par radcur
Source avec Zip Source avec une capture IMPRESSION AU FIL DE L'EAU VERS IMPRIMANTE MATRICIELLE par rimas10
Source avec Zip Source avec une capture IMPRIMER CODE BARE par StetechCove

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture PROGRAMME (COMMENTÉ) PERMETTANT DE TRACER DES COURBES À PART... par JSilvere
Source avec Zip Source avec une capture Source .NET (Dotnet) REDIMENSIONNER ET IMPRIMER FORMAT PHOTO (10X15) par Le Pivert
Source avec Zip TROUSSE A PHARMACIE 2 par 123collargol
SCRIPT VBS D'IMPRESSION OU AFFICHAGE D'UN RÉPERTOIRE DEPUI... par djebbipgm
Source avec Zip Source avec une capture IMPRESSION AU FIL DE L'EAU VERS IMPRIMANTE MATRICIELLE par rimas10

Commentaires et avis

Commentaire de Renfield le 31/07/2006 13:59:57 administrateur CS

bien que je n'en comprenne pas le but exact...
(les CommonDialog permettent de modifier le parametrage, sont localisées, etc)

ces deux etapes me semblent 'logiquement' inversées :

For Each X In Printers  
    ...
Next

If Printers.Count = 0 Then
    ...
    Exit Sub
End If

Commentaire de filotto le 26/05/2008 21:09:47

peut tu me donner un exemple pour le nb de copies. Merci.

Commentaire de Renfield le 27/05/2008 07:15:20 administrateur CS

Printer.copies = 2

Commentaire de asie le 28/08/2008 08:19:30

Merci bocoup pour ton code, mais j'ai une préoccupation ce code est t'il valable pour les états sous Crystal Report?
Car c'est ce dernier que j'utilise pour mes états sous VB.

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Imprimer dans un fichier avec un CommonDialog [ par BECKY ] Bonjour à tous,J'ai fait un petit programme d'impression en VB6 avec l'objetCommonDialog.J'arrive sans problème à faire des impressions.Par contre qua choix de pages à imprimer avec shellexecute [ par casentlepate ] Bonjour à tous,je souhaite imprimer uniquement un les pages 1 et 2 d'un fichier pdf en utilisant les fonctionnalités DDE via la commande she impression formulaire avec choix imprimante [ par midmil ] sauriez vous comment je pourrais imprimer un formulaire VB sachant que j'ai besoin de préciser l'imprimante. Je ne peux pas demander la boite de dialo Imprimer une image avec affichage CommonDialog [ par Cpapy ] Bonjour,    J'imprime actuellement des Photos avec Printer.PaintPicture mais je pense qu'il est possible d'utiliser une autre technique plus intér imprimer avec commondialog [ par le_chef ] salut,je vx imprimer avec l'utilisation d'un commondialog et comment construir en page pour l'imprimer mercii mettre une valeur par defaut liste déroulante de choix [ par Aurore3555 ] Bonjour, j'ai un fichier qui me calcule le fournisseurs le plus interessant et j'aimerais avoir une liste déroulante de choix qui me donne en premier Choix ds une liste deroulante et tabulation [ par DUX76 ] Bonjour, Un truc tout bête mais je ne vois pas... J'ai une liste deroulante ds un formulaire si je remplis le champs precedent à la main et que je tab Valeur attribuée à une cellule suite au choix d'un buttonradio (option button) [ par anasshouari ] Bonsoir tout le monde je bloque au niveau de mon application (je ne suis du tout un développeur[^^clinoeil1]) Je veux qu'une valeur X soit affecter a choix d'imprimante [ par tekanerahtatase ] Bonjour, J'aimerais savoir comment je pourrais afficher un choix d'imprimante dans une application VB6. ou mieux encore, définir une imprimante seule image dans richtextbox [ par mathieu6220 ] Bonjours/Bonsoir Vous allez me dire que la réponse se trouve déjà sur le forum oui c'est vrai mais je n'ai pas trouvé ce que je voulais exactement. J'


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,513 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales