none
Impression form

    Discussion générale

  • Bonsoir, je suis débutant et j'ai vraiment du mal à imprimer mon application que j'ai developpé sous vs 2015.

    voici le code:

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;
    using MessagingToolkit.QRCode.Codec;
    using MessagingToolkit.QRCode.Codec.Data;
    using System.Drawing.Printing;

    namespace Fiche_Individuelle
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }

            private void Form1_Load(object sender, EventArgs e)
            {
               
            }

            private void button1_Click(object sender, EventArgs e)
            {
                string url = textBox1.Text;
                QRCodeEncoder encoder = new QRCodeEncoder();
                Bitmap qrcode = encoder.Encode(url);
                pictureBox1.Image = qrcode;
            }

            private void button2_Click(object sender, EventArgs e)
            {
                SaveFileDialog SFD = new SaveFileDialog();
                SFD.Filter = "PNG|*.png|IPEG|*.jpeg|GIF|*.gif";
                if (SFD.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                {
                    pictureBox1.Image.Save(SFD.FileName);
                }
            }

            private void button3_Click(object sender, EventArgs e)
            {
                OpenFileDialog OFD = new OpenFileDialog();
                if (OFD.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                {
                    pictureBox1.ImageLocation = OFD.FileName;
                }
            }

            private void button4_Click(object sender, EventArgs e)
            {
                QRCodeDecoder decoder = new QRCodeDecoder();
                textBox1.Text = (decoder.decode(new QRCodeBitmapImage(pictureBox1.Image as Bitmap)));
                //MessageBox.Show(decoder.decode(new QrcodeBitmapImage(pictureBox1.Image as Bitmap)));
            
           }

            private void button5_Click(object sender, EventArgs e)
            {
                OpenFileDialog OFD = new OpenFileDialog();
                if (OFD.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                {
                    pictureBox2.ImageLocation = OFD.FileName;
                }
            }

            private void pictureBox2_Click(object sender, EventArgs e)
            {

            }

            private void button6_Click(object sender, EventArgs e)
            {
                FIprintPreviewDialog.Document = FIprintDocument;
                FIprintPreviewDialog.ShowDialog();
            }

            private void FIprintDocument_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
            {
                
            }

            private void FIprintPreviewDialog_Load(object sender, EventArgs e)
            {

           }
        }
      }

    Si possible l'imprimer en mode paysage. De l'aide SVP


    jeudi 9 juin 2016 00:08

Toutes les réponses

  • Bonjour Taderalo,

    Vous trouverez un exemple d'impression de Windows Form ici : How To Print a Windows Forms.

    jeudi 9 juin 2016 05:39
  • Bonjour, j'ai effectivement tenté cette méthode mais malheureusement je me retrouve avec beaucoup d'erreur. Je suis un débutant. Ou dois-je mètre tout ce code dans le mien?

    jeudi 9 juin 2016 08:09
  • Bonjour Taderalo,

    Pour faire fonctionner cet exemple, assurez vous d'avoir mis les bon espaces de noms. Dans cet exemple le fenêtre Form1 possède un bouton nommé printButton ainsi qu'un contrôle PrintDocument nommé printDocument1. Le but n'est pas de copier / coller tout le code de cet exemple, seul quelques parties vous intéresses à savoir :

    • La variable privée memoryImage
    • La méthode CaptureScreen
    • L'événement Clic du bouton et l'événement printpage du printdocument. 
    jeudi 9 juin 2016 08:26
  • Bonsoir Arthur LeMeur,

    le code marche à merveille mais j'ai un souci avec. Il me fait une capture de mon application en mode portrait et m'affiche aussi un message:

    Gravité    Code    Description    Projet    Fichier    Ligne    État de la suppression
    Avertissement        L'assembly référencé 'mscorlib.dll' cible un processeur différent    Fiche Individuelle    C:\Users\Oumar\Desktop\FIAP\Nouveau dossier\Fiche Individuelle\Fiche Individuelle\ALINK       

    Dans mon code j'ai trois pictureBox que je souhaite imprimer uniquement en mode paysage, est-ce possible d'entrée des dimensions spécifiquement à la zone des trois picturebox? Si possible comment?

    Merci beaucoup pour ton aide et je m'excuse de cette réponse tardive, faute de temps.

    vendredi 10 juin 2016 23:25
  • Bonjour Taderalo,

    Pour faire fonctionner cet exemple, assurez vous d'avoir mis les bon espaces de noms. Dans cet exemple le fenêtre Form1 possède un bouton nommé printButton ainsi qu'un contrôle PrintDocument nommé printDocument1. Le but n'est pas de copier / coller tout le code de cet exemple, seul quelques parties vous intéresses à savoir :

    • La variable privée memoryImage
    • La méthode CaptureScreen
    • L'événement Clic du bouton et l'événement printpage du printdocument. 
    Y'a t'il une solution qui n'est pas cette méthode? C'est à dire: Imprimer les 3 picturebox de mon application car la methode captureScreen m'imprime la moitié de la page et une partie de mon pc
    samedi 25 juin 2016 00:11
  • Bonjour,

    Quand j'ai découvert les impressions je ne connaissais pas Drawing, alors je suis parti à la découverte du ReportViewer.

    Bien entendu je ne suis pas forcément bien placé pour parler des avantages comparés des deux technologies.

    Je précise au demeurant que j'ai effectué cette découverte dans le cadre d'applications web. Je viens de voir que ça existe aussi pour Winform.

    mercredi 6 juillet 2016 18:52