IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

Imprimer un form / formulaire + vb express 2010


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Inscrit en
    Décembre 2006
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 32
    Par défaut Imprimer un form / formulaire + vb express 2010
    Bonjour ,

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

    - je arrive a trouver le code pour imprimer un form mais je cherche un code pour imprimer tout simplement le contenu de form sans l'entre

    - je cherche un code pour imprimer un formulaire

    j'ai parcouru pas mal le forum et je ne trouve pas ma reponse ,
    quelqu'un as une idée

    merci

  2. #2
    Membre confirmé
    Homme Profil pro
    Retraité
    Inscrit en
    Septembre 2005
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Septembre 2005
    Messages : 28
    Par défaut
    Bonjour,
    Le plus simple est sans doute de télécharger un complément de VB Net = Microsoft.visualbasic.powerpacks.dll.- ]Ce module comprend plusieurs outils, dont notamment Printform, qui permet l'impression presque sans code d'un formulaire/

  3. #3
    Membre actif
    Inscrit en
    Décembre 2006
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 32
    Par défaut
    Bonjour ,

    je cherche un lien pour télécharger un complément de VB Net = Microsoft.visualbasic.powerpacks.dll.

    qui peut m'aide

  4. #4
    Membre confirmé
    Homme Profil pro
    Retraité
    Inscrit en
    Septembre 2005
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Septembre 2005
    Messages : 28

  5. #5
    Membre actif
    Inscrit en
    Décembre 2006
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 32
    Par défaut
    Bonjour ,

    ce bon j'ai installer Visual Basic Power Packs 3.0 mais comment le utiliser et ou se trouve??

    merci

  6. #6
    Membre confirmé
    Homme Profil pro
    Retraité
    Inscrit en
    Septembre 2005
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Septembre 2005
    Messages : 28
    Par défaut
    Bonjour,
    Une demande plus explicite serait bienvenue.
    Où se trouve ? Quoi ?
    Comment utiliser ? N'y-a-t-il pas un fichier msi ? Alors, cliquez dessus.
    Une fois ce pack installé dans VB Net, il faut cliquer sur Outils et rajouter les outils contenus dans ce pack.

  7. #7
    Membre actif
    Inscrit en
    Décembre 2006
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 32
    Par défaut
    Bonjour

    après l'installation j'ai cliquer sur Outil puis Gestionnaire d'extensions
    il m'affiche aucun extension installer

    encors un peut d'aide

  8. #8
    Membre expérimenté
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 104
    Par défaut
    Sous VB2010 :
    - Menu "Projet", "Propriétés de <Nom du projet>"
    - Onglet "Références"
    - Vérifier dans "Espaces de noms importés", si "Microsoft.VisualBasic.PowerPacks.Printing" est présent. si oui, le sélectionner.
    - Dans le cas contraire, cliquer le bouton "Ajouter..."
    - Dans l'onglet ".NET", rechercher et sélectionner "Microsoft.VisualBasic.PowerPacks.Vs".

    Exemple de code ensuite :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim pForm = New Microsoft.VisualBasic.PowerPacks.Printing.PrintForm

  9. #9
    Membre confirmé
    Homme Profil pro
    Retraité
    Inscrit en
    Septembre 2005
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Septembre 2005
    Messages : 28
    Par défaut
    Bonjour,
    Avant de mettre les références, il est nécessaires d'avoir les outils dans la boîte à outils qui se trouve à gauche de la fenêtre.
    Pour cela, aller dans <Outils>, puis <Choisir des éléments de la boîte à outils>.
    Il faut alors cocher dans la liste qui apparait : Datarepeater, etc..

  10. #10
    Membre actif
    Inscrit en
    Décembre 2006
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 32
    Par défaut
    Bonjour,
    ce bon j'ai crée Datarepeater et j'ai déplacer le formulaire dans cette zone
    et aussi j'ai ajouter Microsoft.VisualBasic.PowerPacks.Printing dans la Références

    mais es ce que je déplace le bouton imprimer dans la zone de Datarepeater ou nn
    l'osque je exécutée la form apparaitre avec un cadre de Datarepeater sans le contenu (formulaire)
    le code du botton imprimer ne ça marche pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Public Class Form5
     
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Dim pForm = New Microsoft.VisualBasic.PowerPacks.Printing.PrintForm
        End Sub
    End Class
    et merciiiiii tt le monde

  11. #11
    Membre confirmé
    Homme Profil pro
    Retraité
    Inscrit en
    Septembre 2005
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Septembre 2005
    Messages : 28
    Par défaut
    Bonjour,
    J'avais cité datarepeater pour indiquer un contrôle figurant dans la pack.
    Celui qui convient est le contrôle printform, qui permet l'impression du formulaire.
    Ajouter le bouton d'impression avec le code :

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

    ' Cache le bouton Imprime, c'est mieux qu'il ne figure pas dans l'impression

    Button1.Visible = False

    ' prévisualisation(mais il faut peut-être un contrôle printpreviewdialogdialog

    PrintForm1.PrintAction = Printing.PrintAction.PrintToPreview

    ' Imprime le formulaire

    PrintForm1.Print()

    ' Restaure le bouton Imprime

    Button1.Visible = True

    End Sub

  12. #12
    Membre actif
    Inscrit en
    Décembre 2006
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 32
    Par défaut
    Bonjour,
    l'osque je exécute mon application je remarque le contenu de de mon form form5 est qui continu Datarepeater est vide pour faire l’impression

    http://www.developpez.net/forums/att...1&d=1353405886
    et le code mon bouton imprimer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
     
            ' Cache le bouton Imprime, c'est mieux qu'il ne figure pas dans l'impression
     
            Button1.Visible = False
     
            ' prévisualisation(mais il faut peut-être un contrôle printpreviewdialogdialog
     
            PrintForm5.PrintAction = Printing.PrintAction.PrintToPreview
     
            ' Imprime le formulaire
     
           PrintForm5.Print()
     
            ' Restaure le bouton Imprime
     
            Button1.Visible = True
     
        End Sub
    j'ai un msg erreur : PrintForm5 n'est pas déclarer

    j'ai pas compris cet deux phrases :
    J'avais cité datarepeater pour indiquer un contrôle figurant dans la pack.
    Celui qui convient est le contrôle printform, qui permet l'impression du formulaire.
    svp un peux de explication et merciiiii bien
    Images attachées Images attachées  

  13. #13
    Membre émérite

    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Israël

    Informations forums :
    Inscription : Mars 2012
    Messages : 691
    Par défaut
    Salut

    peut etre ainsi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
     
        Imports System.Drawing.Printing
    Public Class ClassImpression
        Private myimage As Bitmap
        Private thectrl As Control
     
        Private Function Capturectrl(ByVal ctrl As Control) As Bitmap
            Dim memoryImage As Bitmap
            Dim memoryGraphics As Graphics
            memoryImage = Nothing
            Dim mygraphics As Graphics = ctrl.CreateGraphics()
            Dim s As Size = ctrl.Size
            If TypeOf ctrl Is Form AndAlso DirectCast(ctrl, Form).FormBorderStyle <> FormBorderStyle.None Then
                memoryImage = New Bitmap(s.Width - 10, s.Height - (SystemInformation.FrameBorderSize.Width + 6 + SystemInformation.CaptionHeight), mygraphics)
                memoryGraphics = Graphics.FromImage(memoryImage)
                memoryGraphics.CopyFromScreen(0, (SystemInformation.FrameBorderSize.Width + 0 + SystemInformation.CaptionHeight), 0, 0, New Size(memoryImage.Width, memoryImage.Height), CopyPixelOperation.SourceCopy)
            Else
                memoryImage = New Bitmap(s.Width, s.Height, mygraphics)
                memoryGraphics = Graphics.FromImage(memoryImage)
                memoryGraphics.CopyFromScreen(ctrl.Left, ctrl.Top, 0, 0, New Size(memoryImage.Width, memoryImage.Height), CopyPixelOperation.SourceCopy)
            End If
            Return memoryImage
        End Function
        Public Function GetPreview() As Bitmap
            Return Capturectrl(thectrl)
        End Function
        Public Sub printdoc()
            Try
     
                Dim printdoc As New PrintDocument
                Dim ppd As New PrintPreviewDialog
              myimage = Capturectrl(thectrl)
                AddHandler printdoc.PrintPage, AddressOf printform
                'paramètres de page
                Dim ps As New PageSettings
                ps.Landscape = False
                printdoc.DefaultPageSettings = ps
                'indique à la prévisualisation le document à montrer
                ppd.Document = printdoc
                ppd.WindowState = FormWindowState.Maximized
                'imprssion si ok
                If ppd.ShowDialog = Windows.Forms.DialogResult.OK Then
                    ppd.Document.Print()
                End If
            Catch ex As Exception
                MessageBox.Show(ex.Message)
            End Try
        End Sub
     
        Private Sub printform(ByVal sender As Object, ByVal e As PrintPageEventArgs)
            Try
                e.Graphics.DrawImage(myimage, 0, 0)
                e.HasMorePages = False
            Catch ex As Exception
                MessageBox.Show(ex.Message)
            End Try
        End Sub
     
        Public Sub New(ByVal ctrl As Control)
            thectrl = ctrl
        End Sub
    End Class
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub ButtonP_MouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles ButtonP.MouseClick
            Dim printer As New ClassImpression(Me)
            printer.printdoc()
     
        End Sub

  14. #14
    Membre confirmé
    Homme Profil pro
    Retraité
    Inscrit en
    Septembre 2005
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Septembre 2005
    Messages : 28
    Par défaut
    Bonjour,
    Je récapitule la mache à suivre, une fois que les contrôles du pack sont rajoutés à la bôiter à outils.
    1)On ouvre un nouveau projet. Un formulaire apparaît.
    2)On ajoute un contrôle printform (appelé printform1) et qui vient se positionner en dehors de la form1.
    3)On ajoute un contrôle bouton (appelé bouton1) qui reçoit le code :
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

    Button1.Visible = False

    PrintForm1.PrintAction = Printing.PrintAction.PrintToPreview

    PrintForm1.Print()


    Button1.Visible = True

    End Sub

    Le clic sur le bouton fait apparaître le formulaire à l'écran en prévisualisation ; pour l'imprimer, on clique sur le bouton imrimante du prévisu.
    Aucun autre code n'est nécessaire.

Discussions similaires

  1. Création d'un usercontrol pour windows form sous VB.NET Express 2010
    Par patte d'ours dans le forum Windows Forms
    Réponses: 2
    Dernier message: 18/06/2014, 15h38
  2. Réponses: 19
    Dernier message: 11/03/2014, 13h13
  3. Réponses: 0
    Dernier message: 06/11/2012, 14h03
  4. [VB.NET]Comment Imprimer une form
    Par bernard06 dans le forum Windows Forms
    Réponses: 4
    Dernier message: 19/10/2011, 18h43
  5. imprimer sous forme de formulaire
    Par fayoub dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 15/08/2006, 22h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo