Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Au cours de la conception d’une application, vous pouvez concevoir un formulaire de telle façon qu’il représente une page imprimée. L’exemple de code suivant montre comment imprimer une copie du formulaire actif à l’aide de la CopyFromScreen méthode.
Exemple :
Pour exécuter l’exemple de code, ajoutez deux composants à un formulaire avec les paramètres suivants :
| Objet | Propriété - Événement | Valeur |
|---|---|---|
| bouton | Name |
Button1 |
Click |
Button1_Click |
|
| PrintDocument | Name |
PrintDocument1 |
PrintPage |
PrintDocument1_PrintPage |
Le code suivant est exécuté lorsqu'on clique sur Button1. Le code crée un Graphics objet à partir du formulaire et enregistre son contenu dans une Bitmap variable nommée memoryImage. La PrintDocument.Print méthode est appelée, qui appelle l’événement PrintPage . Le gestionnaire d'événements d'impression dessine la bitmap memoryImage sur l'objet Graphics de la page d'imprimante. Lorsque le code du gestionnaire d’événements d’impression est retourné, la page est imprimée.
namespace Sample_print_win_form1
{
public partial class Form1 : Form
{
Bitmap memoryImage;
public Form1()
{
InitializeComponent();
}
private void Button1_Click(object sender, EventArgs e)
{
Graphics myGraphics = this.CreateGraphics();
Size s = this.Size;
memoryImage = new Bitmap(s.Width, s.Height, myGraphics);
Graphics memoryGraphics = Graphics.FromImage(memoryImage);
memoryGraphics.CopyFromScreen(this.Location.X, this.Location.Y, 0, 0, s);
printDocument1.Print();
}
private void PrintDocument1_PrintPage(
System.Object sender,
System.Drawing.Printing.PrintPageEventArgs e)
{
e.Graphics.DrawImage(memoryImage, 0, 0);
}
}
}
Public Class Form1
Dim memoryImage As Bitmap
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim myGraphics As Graphics = Me.CreateGraphics()
Dim s As Size = Me.Size
memoryImage = New Bitmap(s.Width, s.Height, myGraphics)
Dim memoryGraphics As Graphics = Graphics.FromImage(memoryImage)
memoryGraphics.CopyFromScreen(Me.Location.X, Me.Location.Y, 0, 0, s)
PrintDocument1.Print()
End Sub
Private Sub PrintDocument1_PrintPage(
ByVal sender As System.Object,
ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles PrintDocument1.PrintPage
e.Graphics.DrawImage(memoryImage, 0, 0)
End Sub
End Class
Programmation fiable
Les conditions suivantes provoquent une exception :
- Vous n’êtes pas autorisé à accéder à l’imprimante.
- Aucune imprimante n’est installée.
Sécurité .NET
Pour exécuter cet exemple de code, vous devez avoir l’autorisation d’accéder à l’imprimante que vous utilisez avec votre ordinateur.
Voir aussi
.NET Desktop feedback