Partage
  • Partager sur Facebook
  • Partager sur Twitter

imprimer form + vb express 2010

    31 octobre 2012 à 15:08:29

    Bonjour ,

    Je travaille sous vb express 2010 + win 7 + bdd acces et je suis en train de créer une petite application :

    j'ai parcouru pas mal le forum et je ne trouve pas ma reponse ,

    je voudrais tout simplement imprimer une form tel que l'on la voit a l'ecran ,

    voici mon code Form1

    Imports Microsoft.VisualBasic.PowerPacks.Printing
    Public Class Form1
     
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            PrintForm1.PrintAction = Printing.PrintAction.PrintToPreview
            PrintForm1.Print(Me, PrintForm.PrintOption.FullWindow)
        End Sub
     
    End Class
    


    mais j'ai l' eurrre suivant :
    - printting n'est pas déclaré il peut être inaccessible en raision de son niveau protection
    - printForm1 n'est pas déclaré il peut être inaccessible en raision de son niveau protection
    quelqu'un as une idée

    merci
    • Partager sur Facebook
    • Partager sur Twitter
      31 octobre 2012 à 23:23:52

      Bonjour

      Sub Button2_Click(...
      Dim PageSetupDialog As New PageSetupDialog()
      PageSetupDialog.Document = PrintDocument1
      PageSetupDialog.PageSettings.Landscape = True
      Me.PrintDocument1.Print()
      End Sub
      
      Sub PrintDocument1_PrintPage(...
      Dim bmp As New Bitmap(Me.Width, Me.Height, Imaging.PixelFormat.Format32bppArgb)
      Me.DrawToBitmap(bmp, New Rectangle(0, 0, Me.Width, Me.Height))
      e.Graphics.DrawImage(bmp, 10, 10)
      End Sub
      
      • Partager sur Facebook
      • Partager sur Twitter
        1 novembre 2012 à 10:28:55

        Bonjour

        merciii bien ca marche

        mais je ajouter une bouton aperçu avant impression pour imprimer seulement le contenu de form sans l’entête du form


        est ce que possible ?? qui peut m'aide

        • Partager sur Facebook
        • Partager sur Twitter
          1 novembre 2012 à 10:37:12

          Bonjour,

          Je ne crois pas que ce soit possible !

          Dand ce cas tu peux au moment de l'impression changer l'apparence de la form en enlevant le bandeau (voir les propriétés), et si ce n'est pas accepté dans le code, ce qui est sans doute le cas : de faire une autre form sans bandeau, identique à celle à imprimer, et qui servira à l'impression.
          • Partager sur Facebook
          • Partager sur Twitter
            14 novembre 2012 à 11:52:54

            bonjour ,

            j'ai chercher dans la propriétés mais je n'arrive pas à imprimer seulement le contenu de form
            svp comment faire pour imprimer cette partie ou bien un formulaire

            <lien url="http://www.developpez.net/forums/attachment.php?attachmentid=105600&stc=1&d=1352890146"></lien>
            • Partager sur Facebook
            • Partager sur Twitter
              14 novembre 2012 à 15:50:52

              Bonjour,

              S'il te plaît lis bien mes réponses : je te proposais de faire une nouvelle form sans bandeau, juste pour l'impression, pourquoi n'as-tu pas fait ça ?

              Tu peux aussi essayer de jouer sur les propriétés :


              Me.DrawToBitmap(bmp, New Rectangle(0, 0, Me.Width, Me.Height))
              


              • Partager sur Facebook
              • Partager sur Twitter
              Anonyme
                7 décembre 2012 à 17:13:14

                Bonjour, merci pour ce code, il est superbe.

                Est-il possible de choisir l'imprimante au lieu d'imprimer sur celle par défaut?
                • Partager sur Facebook
                • Partager sur Twitter
                  7 décembre 2012 à 17:19:12

                  Salut,

                  Le composant PrintDialog permet le choix de l'imprimante, de la zone à imprimer (tout, la sélection..) et donne accès aux caractéristiques de l'imprimante.

                  Créer une instance de PrintDialog :

                  Dim dlg As New PrintDialog
                  


                  Il faut indiquer au PrintDialog sur quel PrintDocument travailler:

                  dlg.Document = pd
                  


                  Puis ouvrir la fenêtre PrintDialog avec la méthode ShowDialog.

                  L'utilisateur choisit son imprimante puis clique sur 'Ok'.

                  Exemple:

                  Quand l'utilisateur clique sur le bouton ButtonPrint ('Imprimer') la fenêtre PrintDialog s'ouvre:

                  Voici le code complet:

                  Private Sub ButtonPrint_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _ 
                  Handles ButtonPrint.Click
                  
                  Dim dlg As New PrintDialog
                  
                  dlg.Document = pd
                  
                  Dim result As DialogResult = dlg.ShowDialog()
                  
                  If (result = System.Windows.Forms.DialogResult.OK) Then
                  
                      pd.Print()
                  
                  End If
                  
                   
                  
                  End Sub
                  
                  • Partager sur Facebook
                  • Partager sur Twitter
                  Anonyme
                    7 décembre 2012 à 17:33:48

                    attends, je suis perdu. il vient d'où de "pd" ?
                    • Partager sur Facebook
                    • Partager sur Twitter
                      7 décembre 2012 à 17:38:49

                      C'est un nom donné à ton PrintDialog.Document.
                      • Partager sur Facebook
                      • Partager sur Twitter
                      Anonyme
                        7 décembre 2012 à 17:42:29

                        Bien, il me dit que "pd" n'est pas déclaré !

                        OK, c'est bon!
                        merci
                        • Partager sur Facebook
                        • Partager sur Twitter
                          7 décembre 2012 à 17:46:23

                          Non, je me suis trompé dans mes propose : ici pd (abrégé de printDocument) est une valeur de type PrintDocument(). De ton côté, remplace là par le PrintDocument sur lequel tu veux travailler :

                          dlg.Document = nomDeTonPrintDocument
                          
                          • Partager sur Facebook
                          • Partager sur Twitter
                          Anonyme
                            7 décembre 2012 à 17:48:29

                            Oui j'avais trouvé... En tout cas merci.

                            C'est impec, je vais pouvoir avancer avec ça, et ajuster selon mes envis.
                            • Partager sur Facebook
                            • Partager sur Twitter

                            imprimer form + vb express 2010

                            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                            • Editeur
                            • Markdown