Tuto=<impression d'un text>

Soyez le premier à donner votre avis sur cette source.

Snippet vu 6 439 fois - Téléchargée 29 fois

Contenu du snippet

Voici un tout petit tutorial pour imprimer une cas texte

Source / Exemple :


Private Sub Form_Load()
Contenu.Text = "Voici votre texte imprimé sur une feuille !
End Sub
-----
Private Sub CmdImprimer_Click()
Printer.Print 'initialisation de l'imprimante
Printer.Print Contenu.Text
Printer.EndDoc 
End Sub

Conclusion :


- Explications : La syntaxe est plutôt simple et c'est tant mieux pour nous ;) .

La première ligne de la procédure : Printer.Print, est nécéssaire à l'initialisation de l'imprimante. Si on ne place pas cette ligne, l'impression restera en suspend jusqu'à la fermeture de votre programme.

Ensuite on imprime le texte de la TextBox "Contenu" avec : Printer.Print Contenu.Text .

Pour finir : Printer.EndDoc marque la fin de l'impression.

Vous pouvez tester votre programme... n'oubliez pas d'allumer l'imprimante ;) !

A voir également

Ajouter un commentaire

Commentaires

cs_protect
Messages postés
87
Date d'inscription
lundi 19 mai 2003
Statut
Membre
Dernière intervention
15 mai 2011
2 -
scuz pour la faute reparation=>
Voici un tout petit tutorial pour imprimer une case texte
cs_Warny
Messages postés
478
Date d'inscription
mercredi 7 août 2002
Statut
Membre
Dernière intervention
10 juin 2015
-
je ne suis pas sûr,
mais il me semble que ton code ne passe pas à la ligne quand il arrive en bout de page.

Sinon, pour régler le problème, il existe une fonction qui calcule la taille que prend un texte sur un support donné. Tous les objets possedant un handle graphique exportent cette fonction, donc tu devrais la retrouver sur l'objet printer
cs_PROGRAMMIX
Messages postés
1134
Date d'inscription
mercredi 2 octobre 2002
Statut
Membre
Dernière intervention
24 juillet 2011
-
Il m'est déjà arrivé d'imprimer sans initialiser l'imprimante avec Printer.Print.
Je ne suis pas convaincu que sans cette ligne, le code reste en suspend puisque c'est l'instruction Printer.EndDoc qui donne l'ordre à l'imprimante d'imprimer ou non.
Ainsi, je peux par exemple faire plusieurs lignes d'impression puis demander en final à l'utilisateur s'il veut ou non imprimer sa feuille.

Private Sub Essai()
Printer.Print "Première ligne"
Printer.Print "Deuxième ligne"
If MsgBox("Faut-il imprimer ou non ?", vbYesNo") = vbYes Then
Printer.EndDoc
Else
Printer.KillDoc
End If
pcpunch
Messages postés
1247
Date d'inscription
mardi 7 mai 2002
Statut
Membre
Dernière intervention
18 février 2019
3 -
"La première ligne de la procédure : Printer.Print, est nécéssaire à l'initialisation de l'imprimante. Si on ne place pas cette ligne, l'impression restera en suspend jusqu'à la fermeture de votre programme."

Totalement faux!!!! ca sert a rien!!!! c'est la commande enddoc qui envoie le texte a l imprimante si cette commande est omise alors l'impression débutera a la fermeture du soft!!!!!!!

De plus tans qu'a faire un tuto autant le faire plus complet !! ex:

Printer.ScaleMode = vbMillimeters 'Mode Millimétres
Printer.FontSize = 20 'taille
Printer.CurrentX = 10 ' ecrit a 10mm sur axe X (a partir de gauche)
Printer.CurrentY = 20 'ecrit à 20mm sur axe y (a partir su haut)
'Ecrire du texte
Printer.Print "Voila mon texte"
'imprimer picture1 gauche 10mm, hau 10mm, largeur 100mm,hauteur 100mm
Printer.PaintPicture picture1, 10, 10, 100, 100

Etc........
cs_caux
Messages postés
46
Date d'inscription
vendredi 8 juillet 2005
Statut
Membre
Dernière intervention
14 juin 2007
-
ma question peut vous paraître idiote, mais comment fait-on pour imprimer les autre lignes si la textbox est en multiligne.
parce que là vous expliquez pour une ligne, mais personne n'utilise une feuille A4 pour une ligne :)

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.