Impression d'un Label avec retour à la ligne sur VB6
patrouchkoukss
Messages postés7Date d'inscriptionvendredi 22 décembre 2000StatutMembreDernière intervention 8 octobre 2008
-
24 sept. 2008 à 13:45
patrouchkoukss
Messages postés7Date d'inscriptionvendredi 22 décembre 2000StatutMembreDernière intervention 8 octobre 2008
-
24 sept. 2008 à 16:44
Bonjour à tous !
Je poste ce message sur le forum car je n'ai toujours pas trouvé le moyen d'imprimer mon label, même avec l'aide des réponses déja postées sur le forum et qui concerne à peu de choses près le même sujet...
La solution avec API DrawText j'dois vous avouer que j'y ai absolument rien compris.
Et j'en avais trouvé aussi deux autres avec des boucles : l'un nécessitant de connaitre l'utilisation d'une police ayant d caractères de taille identique afin de faire un retour à la ligne qui va bien avant la fin de la page et l'autre faisant des calculs savants tout seul qui devaient permettre l'impression sur plusieurs lignes sans problème quelque soit la police ...
Résultat de ces deux programmes : le premier ne marche pas et le deuxième m'a tout imprimé sur 1 ligne...à la verticale ..
Merci d'avance pour votre aide !!
A voir également:
Impression d'un Label avec retour à la ligne sur VB6
patrouchkoukss
Messages postés7Date d'inscriptionvendredi 22 décembre 2000StatutMembreDernière intervention 8 octobre 2008 24 sept. 2008 à 13:58
Sur l'imprimante !!
A l'écran sur mon label le retour à la ligne se fait sans problème.
C'est l'imprimante qui coupe à la fin de la largeur de la page...
patrouchkoukss
Messages postés7Date d'inscriptionvendredi 22 décembre 2000StatutMembreDernière intervention 8 octobre 2008 24 sept. 2008 à 14:08
Voici le message qu'une autre personne avec le même problème avait posté il y a quelques années .. et la réponse qu'on lui a donné .. :
Je souhaite imprimer le contenu d'un label ou d'un textBox ou
directement un texte via printer.print "". Mon problème est le suivant:
-J'arrive bien à imprimer mais si j'ai un label ou un textBox d'une
taille fixée alors le texte effectue des retours à la ligne (retour
chariot). Le problème c'est que lorsque je lance l'impression les
retours chariots ne sont pas pris en compte. Et sur la feuille tout est
imprimé à a suite. Si le texte dépasse la largeur de la feuille alors
il n'est pas imprimé.
Pourriez vous m'aider SVP. Ca fait un moment que je planche dessus.
Merci
Réponse obtenue :
Pour les impressions tu dois gérer tout cela toi-même ! C'est lourd en effet, mais il n'y a pas bcp d'autre possibilité !!
jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 201427 24 sept. 2008 à 16:37
L'onjet Printer fonctionne comme ine pisturebox
Je n'ai pas d'imprimante branchée et fais donc ce test, avec un label normal et une picturebox :
Private Sub Command1_Click()
For i = 1 To 5
Label1.Caption = Label1.Caption & vbCrLf & "blabla"
Next
DoEvents
Picture1.Print Label1.Caption
End Sub
Je vois que mes retours-charriot sont là et ils seraient donc également là en imprimant.
Il s'agit toutefois de VRAIS retours-charriot et non de "sauts de lignes d'affichage" (qui ne sont pas des retours-charriot ...)
Si ton label ne comporte pas de VRAIS retours-charriot, il va te falloir les créer toi-même avant d'imprimer ton texte. Pour celà, il va te falloir utiliser TextWidth et ajouter un vbcrlf chaque fois qu'arrivé à un espace, la largeur physique de la chaîne à imprimer sera égale ou supérieure à la largeur de ton label.
C'est réalisable, certes...
Vous n’avez pas trouvé la réponse que vous recherchez ?