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

C++Builder Discussion :

impression en builder c++6


Sujet :

C++Builder

  1. #1
    Membre régulier
    Inscrit en
    Mai 2010
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 9
    Par défaut impression en builder c++6
    Slt, je prepare pour mon memoire et je travail avec builder c++ 6 sur une application qui gere les employes d'une societe, et j'ai besoin d'imprime des fiches,mais je ne sais pas comment ,aider moi svp c'est vraiment urgent
    mercie d'avance

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    385
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 385
    Par défaut
    @youkami,

    tes fiches elles sont où exactement?

  3. #3
    Expert confirmé

    Avatar de pottiez
    Homme Profil pro
    Développeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Par défaut
    Salut,
    pour faire une impression il faut utiliser la classe TPrinter et ses méthodes, mais certain objets comme le TChart par exemple permette d'imprimer directement leurs rendu si tu leur passe ton objet TPrinter.
    Fait une recherche sur cette objet

  4. #4
    Membre émérite
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    573
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 573
    Par défaut
    Salut

    Vois çà , c est tres instructif

    http://jp-blondelle.developpez.com/t...?page=sommaire

  5. #5
    Membre régulier
    Inscrit en
    Mai 2010
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 9
    Par défaut
    slt dz robotix, mes fiches sont dans mon disque dur

  6. #6
    Membre émérite
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    573
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 573
    Par défaut
    Salut

    Non ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    OpenDialog1->InitialDir=ExtractFilePath(Application->ExeName) ;
    OpenDialog1->Execute() ;
     
    ShellExecute(Handle,  // Handle de la fenêtre parent
                      "print", // Action à effectuer
                      OpenDialog1->FileName.c_str(), // Fichier
                      NULL, // Paramètres
                      NULL, // Répertoire par défaut
                      SW_SHOW // Manière d'afficher
                      );

  7. #7
    Membre régulier
    Inscrit en
    Mai 2010
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 9
    Par défaut
    slt les amis, les fiches ils doivent etre integre dans l'application

  8. #8
    Membre émérite
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    573
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 573
    Par défaut
    Elles sont de quel format tes fiches ??

  9. #9
    Membre régulier
    Inscrit en
    Mai 2010
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 9
    Par défaut
    ils sont sous forme word(par example le titre de conge , ordre de mission.....)

  10. #10
    Membre émérite
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    573
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 573
    Par défaut
    Et que veux tu faire exactement de tes fiches ?

    Sois precis

  11. #11
    Membre régulier
    Inscrit en
    Mai 2010
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 9
    Par défaut
    je doit remplir ces fiches automatiquement(nom,prenom.....)et apres l'imprimer

  12. #12
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    385
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 385
    Par défaut
    Salut,

    Tu peux utiliser les composants Quick Report, ainsi tu pourras créer tes propres fiches et les remplire automatiquement (généralement en se connectant à une BDD) et les imprimer bien sur.


    Essaie de voir l'onglet QReport.

  13. #13
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Par défaut
    Salut youkami
    Si tu ne desire pas utiliser un composant dedie, tu peu realiser une selection et copie de la page Word a imprimer, la coller sur le Canvas d'un Metafichier et imprimer ce Metafichier, il y a dans le lien fourni par cedni un exemple d'impression d'une copie d'ecran utilisant cette technique.

  14. #14
    Membre régulier
    Inscrit en
    Mai 2010
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 9
    Par défaut
    slt dz rebotix comment je peut utilise le QReport svp

  15. #15
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    385
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 385
    Par défaut
    De chez Delphi,

    tu pourras t'inspirer:

    http://delphipage.free.fr/quickreport.html

    http://nono40.developpez.com/tutorie...i/quickreport/



    Citation Envoyé par youkami Voir le message
    slt dz rebotix comment je peut utilise le QReport svp

  16. #16
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Par défaut
    Pourquoi utiliser un composant alors que l'on peut faire cela par programme
    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
     
    //---------------------------------------------------------------------------
    #include <vcl.h>
    #pragma hdrstop
    #include "Unit1.h"
    #include <utilcls.h>
    #include <Clipbrd.hpp>
    #include <Printers.hpp>
    //---------------------------------------------------------------------------
    #pragma package(smart_init)
    #pragma resource "*.dfm"
    TForm1 *Form1;
    Variant vMSWord, vWDocuments, vWDocument, vFileName ;
    //---------------------------------------------------------------------------
    __fastcall TForm1::TForm1(TComponent* Owner)
            : TForm(Owner)
    {
    }
    //---------------------------------------------------------------------------
    void __fastcall TForm1::Button1Click(TObject *Sender)
    {
    try
            {
        vMSWord = Variant::GetActiveObject("Word.Application");
    //    vMSWord = Variant::CreateObject("Word.Application");
            }
    catch(...)
            {
        vMSWord = Variant::CreateObject("Word.Application");
            }
    vMSWord.OlePropertySet("Visible", true);
     vFileName = "c:\\Debut de lettre.doc";
     vWDocuments = vMSWord.OlePropertyGet("Documents");
     vWDocument = vWDocuments.OleFunction("Open", vFileName);
     vMSWord.OlePropertyGet("Selection").OleFunction("WholeStory");
     vMSWord.OlePropertyGet("Selection").OleProcedure("Copy");
     TMetafile *pMetafile = new TMetafile;
     pMetafile->Assign(Clipboard());
      // imprimer
     Printer()->BeginDoc();
     Printer()->Canvas->Draw(0, 0, (pMetafile ));
     Printer()->EndDoc();
     delete pMetafile;
    }
    //---------------------------------------------------------------------------
    void __fastcall TForm1::Button2Click(TObject *Sender)
    {
        vWDocuments.OleFunction("Close", NULL, NULL);
        vMSWord.OleFunction("Quit");
        // on libere les Variants
        vMSWord = Unassigned;
    Application->Terminate();
    }
    //---------------------------------------------------------------------------
    ce code ouvre word selectionne tout le contenu de la feuille (image compris) le colle sur un TMetafile et imprime texte et image, il ne reste qu'a gerer les marges et la presentation

  17. #17
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    385
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 385
    Par défaut
    Mais j'ai l'impression qu'il fait une gestion de personnel, du coup je lui ai conseillé les QReport, pour récuperer les informations concernants les employés à partir d'un BDD et les afficher selon la personne dans les fiches puis les imprimer.

    Citation Envoyé par blondelle Voir le message
    Pourquoi utiliser un composant alors que l'on peut faire cela par programme
    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
     
    //---------------------------------------------------------------------------
    #include <vcl.h>
    #pragma hdrstop
    #include "Unit1.h"
    #include <utilcls.h>
    #include <Clipbrd.hpp>
    #include <Printers.hpp>
    //---------------------------------------------------------------------------
    #pragma package(smart_init)
    #pragma resource "*.dfm"
    TForm1 *Form1;
    Variant vMSWord, vWDocuments, vWDocument, vFileName ;
    //---------------------------------------------------------------------------
    __fastcall TForm1::TForm1(TComponent* Owner)
            : TForm(Owner)
    {
    }
    //---------------------------------------------------------------------------
    void __fastcall TForm1::Button1Click(TObject *Sender)
    {
    try
            {
        vMSWord = Variant::GetActiveObject("Word.Application");
    //    vMSWord = Variant::CreateObject("Word.Application");
            }
    catch(...)
            {
        vMSWord = Variant::CreateObject("Word.Application");
            }
    vMSWord.OlePropertySet("Visible", true);
     vFileName = "c:\\Debut de lettre.doc";
     vWDocuments = vMSWord.OlePropertyGet("Documents");
     vWDocument = vWDocuments.OleFunction("Open", vFileName);
     vMSWord.OlePropertyGet("Selection").OleFunction("WholeStory");
     vMSWord.OlePropertyGet("Selection").OleProcedure("Copy");
     TMetafile *pMetafile = new TMetafile;
     pMetafile->Assign(Clipboard());
      // imprimer
     Printer()->BeginDoc();
     Printer()->Canvas->Draw(0, 0, (pMetafile ));
     Printer()->EndDoc();
     delete pMetafile;
    }
    //---------------------------------------------------------------------------
    void __fastcall TForm1::Button2Click(TObject *Sender)
    {
        vWDocuments.OleFunction("Close", NULL, NULL);
        vMSWord.OleFunction("Quit");
        // on libere les Variants
        vMSWord = Unassigned;
    Application->Terminate();
    }
    //---------------------------------------------------------------------------
    ce code ouvre word selectionne tout le contenu de la feuille (image compris) le colle sur un TMetafile et imprime texte et image, il ne reste qu'a gerer les marges et la presentation

  18. #18
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Par défaut
    Salut dz_robotix
    Je ne pense pas, mais c'est a lui de nous le dire, et puis ce bout de code interessera certainement les visiteurs

  19. #19
    Membre régulier
    Inscrit en
    Mai 2010
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 9
    Par défaut
    slt blondelle mais ce code ne marche pas

  20. #20
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Par défaut
    Ce code fonctionne chez moi, sur quelle ligne a tu une erreur

Discussions similaires

  1. Réponses: 4
    Dernier message: 17/06/2009, 12h12
  2. Impression En C++ Builder
    Par Hirouchima dans le forum C++Builder
    Réponses: 3
    Dernier message: 11/01/2007, 15h44
  3. Impression page web dans Builder
    Par Charette dans le forum C++Builder
    Réponses: 2
    Dernier message: 19/12/2006, 14h41
  4. impression sous builder (d'une table mysql)
    Par Link45 dans le forum C++Builder
    Réponses: 15
    Dernier message: 13/03/2006, 21h31
  5. Outils, cours et NOUVEAUX tutoriels pour Borland C++Builder
    Par hiko-seijuro dans le forum C++Builder
    Réponses: 10
    Dernier message: 12/03/2006, 22h33

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