Impression d'une fenetre VB.NET [Résolu]

Messages postés
12
Date d'inscription
mercredi 9 mars 2011
Dernière intervention
3 avril 2011
- - Dernière réponse : Programmeur225
Messages postés
12
Date d'inscription
mercredi 9 mars 2011
Dernière intervention
3 avril 2011
- 23 mars 2011 à 13:38
Bonjour, j'ai créer un programme en VB.NET mais je n'arrive pas a utiliser les fonctions d'impression

Voila le code qui concerne l'impression

Private Sub FICHIER_IMPRIMER_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles FICHIER_IMPRIMER.Click
        
        If Me.PrintDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then
            Me.PrintDocument1.PrinterSettings = Me.PrintDialog1.PrinterSettings
            Me.PrintDocument1.Print()
        End If




    End Sub

    Private Sub PrintDocument1_PrintPage(ByVal sender As System.Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles PrintDocument1.PrintPage






    End Sub
End Class


Voila je ne sais pas quoi mettre dans "Private Sub PrintDocument1_PrintPage" Pour imprimer voila ce que je veut imprimer

je veut imprimer une fenetre ou tout ce qu'entoure un panel dans cette fenetre il y a du texte (mais centrer et tout) et une image
je veut que sa imprime en respectant l'endroit du texte et de l'image
Afficher la suite 

Votre réponse

6 réponses

Meilleure réponse
Messages postés
67
Date d'inscription
mercredi 5 mai 2010
Dernière intervention
20 mai 2011
1
3
Merci
Bonjour,

Pour imprimer, il te faut tous redéssiner dans la SUB PrintDocument1_PrintPage.

pour ce faire tu peut utiliser :

e.Graphics.DrawImage
e.Graphics.DrawString
...

la propiété e.MarginBounds te fournie le rectangle représentant l'interieur des marges.

Avec ca tu peut récupérer la position de tes objects dans ton panel et les redessiner dans PrintPage .

Bon courage.

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 117 internautes nous ont dit merci ce mois-ci

Commenter la réponse de ccito
Messages postés
12
Date d'inscription
mercredi 9 mars 2011
Dernière intervention
3 avril 2011
0
Merci
Je ne trouve pas comment éditer le message
Plus de précisions sur cette fenetre

C4est en faite un générateur de CV
Il y a une fenetre d'édition avec des TextBox multiligne et dnas un menu un bouton Preview qui affiche une fenetre avec seulement des Label contenant le tste des TextBox et l'image demandé et sur cette fenetre il y a un bouton IMPRIMER je voudrais imprimer cette fenetre la
Commenter la réponse de Programmeur225
Messages postés
12
Date d'inscription
mercredi 9 mars 2011
Dernière intervention
3 avril 2011
0
Merci
Un truc du genre comme sa
 e.Graphics.DrawString(Me.CV_ADRESSE.Text, New Font("Arial", 80, FontStyle.Bold), Brushes.Black, 35, 65)
        e.Graphics.DrawString(Me.CV_FONCTION.Text, New Font("Arial", 80, FontStyle.Bold), Brushes.Black, 277, 196)
        e.Graphics.DrawString(Me.CV_OBJECTIF.Text, New Font("Arial", 80, FontStyle.Bold), Brushes.Black, ..., ...)
        e.Graphics.DrawString(Me.CV_FORMATION.Text, New Font("Arial", 80, FontStyle.Bold), Brushes.Black, ..., ...)
        e.Graphics.DrawString(Me.CV_EXPERIANCES.Text, New Font("Arial", 80, FontStyle.Bold), Brushes.Black, ..., ...)
        e.Graphics.DrawString(Me.CV_LANGUES.Text, New Font("Arial", 80, FontStyle.Bold), Brushes.Black, ..., ...)
        e.Graphics.DrawImage(Me.CV_IMAGE.Image, 493, 42)


les deux derniers arguemnts (locationx et y de point en haut a gauche du truc a imprimer) c'est bien les meme que ceux de la propriété Location des objects (labels) ?
Commenter la réponse de Programmeur225
Messages postés
12
Date d'inscription
mercredi 9 mars 2011
Dernière intervention
3 avril 2011
0
Merci
mais il n'y a pas plus simple ????
Commenter la réponse de Programmeur225
Messages postés
12
Date d'inscription
mercredi 9 mars 2011
Dernière intervention
3 avril 2011
0
Merci
Merci, sa marche

        e.Graphics.DrawString(Me.CV_ADRESSE.Text, Me.CV_ADRESSE.Font, Brushes.Black, Me.CV_ADRESSE.Location)
        e.Graphics.DrawString(Me.CV_FONCTION.Text, Me.CV_FONCTION.Font, Brushes.Black, Me.CV_FONCTION.Location)
        e.Graphics.DrawString(Me.CV_OBJECTIF.Text, Me.CV_OBJECTIF.Font, Brushes.Black, Me.CV_OBJECTIF.Location)
        e.Graphics.DrawString(Me.CV_FORMATION.Text, Me.CV_FORMATION.Font, Brushes.Black, Me.CV_FORMATION.Location)
        e.Graphics.DrawString(Me.CV_EXPERIANCES.Text, Me.CV_EXPERIANCES.Font, Brushes.Black, Me.CV_EXPERIANCES.Location)
        e.Graphics.DrawString(Me.CV_LANGUES.Text, Me.CV_LANGUES.Font, Brushes.Black, Me.CV_LANGUES.Location)
        e.Graphics.DrawImage(Me.CV_IMAGE.Image, Me.CV_IMAGE.Location)
        e.Graphics.DrawString(Me.Label1.Text, Me.Label1.Font, Brushes.Black, Me.Label1.Location)
        e.Graphics.DrawString(Me.Label2.Text, Me.Label2.Font, Brushes.Black, Me.Label2.Location)
        e.Graphics.DrawString(Me.Label3.Text, Me.Label3.Font, Brushes.Black, Me.Label3.Location)
        e.Graphics.DrawString(Me.Label4.Text, Me.Label4.Font, Brushes.Black, Me.Label4.Location)



Mais par contre ma fenetre fais 659 * 812 et une feuille A4 est beaucoup plus grande de combien il faut rajouter de chaque coté pour que ce soi la bonne taille a l'impression ? (et que la fenetre reste pareille)
exemple:
Dim LACAT As Point
LACAT.x=Me.Label1.Posotion.x+AAA
LACAT.y=Me.Label1.Posotion.y+BBB
e.Graphics.DrawString(Me.Label1.Text, Me.Label1.Font, Brushes.Black, LACAT)


En repmlacant AAA et BBB par des valeurs
Commenter la réponse de Programmeur225
Messages postés
12
Date d'inscription
mercredi 9 mars 2011
Dernière intervention
3 avril 2011
0
Merci
Up
Commenter la réponse de Programmeur225

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.