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 d'éléments Statiques avec QuickReport


Sujet :

C++Builder

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Février 2003
    Messages
    787
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2003
    Messages : 787
    Points : 276
    Points
    276
    Par défaut [Résolu]Impression d'éléments Statiques avec QuickReport
    Bonjour,j'ai un petit soucis,j' ai déjà posté pour ce domaine et lu les post se trouvant déjà dans le forum mais je ne trouve pas mon bonheur..
    J'ai un QuickReport qui imprime des données d'une Base MySQL.Jusque là ca va. Mais j'aimerais bien imprimer des éléments statiques avec comme des TEdit,des Titres,.. J'ai pu voir qu'on pouvait s'aider de l'événement OnNeedData mais bon je peux à la rigueur mettre le caption de tous mes titre etc,..un après l'autre mais c'est fastidieux et pas très joli. J'ai une 20 aines de TEdits et de check box,etc à imprimer car après impression,la personne utilisaant ce programme doit savoir cocher "au bic" ces différents éléments.Avez vous une suggestions?
    Merci à vous
    Cordialement[/img]

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 4
    Points : 5
    Points
    5
    Par défaut
    bonjour,
    je comprend pas tres bien si tu veux imprimer des truc statique et bien tu les mais directement sur ton Quickrep!!
    tu place tes chekbox et tes edits ou des labels (de QReport biensure) et voila!
    si tes label sont déja ecrit dans un programme et que tu veux pas les réécrir et bien tu dis que QRLabel->Caption =Form1->labelNom->Text;
    dans ta fiche ou t'a mis ton Quickrep

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Février 2003
    Messages
    787
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2003
    Messages : 787
    Points : 276
    Points
    276
    Par défaut
    ben justement je les ai mis directement sur le QuickReport.Ce sont des TEdit,Checkbox,etc mais qui ne font pas partie de la classe QuickReport bien qur puisqu'ils n'existent pas Mais à la compilation, rien ne s'affiche.Des réponses,solutions..?
    voici ce que j'ai mis en mode création
    [img]
    http://users.skynet.be/fa395022/image1.jpg
    [/img]
    en quand je compile voilà ce que ca me donne::
    [img]
    http://users.skynet.be/fa395022/image2.jpg
    [/img]
    Un idée.????Aidez moi s'il vous plait.
    Merci à vous tous

  4. #4
    ovh
    ovh est déconnecté
    Rédacteur
    Avatar de ovh
    Homme Profil pro
    Architecte devops web full stack
    Inscrit en
    Mai 2002
    Messages
    3 841
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte devops web full stack

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 841
    Points : 6 514
    Points
    6 514
    Par défaut
    Aucune de tes URL ne fonctionnent.

    Sinon pour ton prob, si je comprends bien tu veux imprimer un formulaire pour l'utilisateur ? Donc des cases à cocher vides, des editbox vides etc. ? Si c'est le cas je ne saurais que te conseiller de dessiner à la main !
    - un petit carré pour une checkbox
    - un petit rond pour une radiobox
    - un rectangle pour une editbox
    C'est pas la mort, ce ne sont que des formes de base, lol De plus ce serait bcp plus clair pour l'utilisateur, ça apparaîtrait mieux à l'impression, plutôt que les composants Windows 3D au look grisâtre...
    Tu peux les faire en bitmap et les importer sur ton QuickRep ça devrait marcher je pense.

    PS : en réponse à ton ps sur un autre post, je te salue à mon tour Vu qu'on se croise souvent, lol

    Tutoriels sur les UPS, e-commerce, PHP, critiques de livres...

    Pensez à consulter les FAQs et les cours et tutoriels.
    FAQ Linux - Cours et tutoriels Linux - FAQ PHP - Cours et tutoriels PHP
    Ce forum est fait pour vous et surtout par vous, merci d'en respecter les règles.

    Je n'ai rien à voir avec la société www.ovh.com !

  5. #5
    Membre actif
    Profil pro
    Inscrit en
    Février 2003
    Messages
    787
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2003
    Messages : 787
    Points : 276
    Points
    276
    Par défaut
    oui j'ai des *problèmes* avec mes urls..
    Bref Tu rigole ou quoi??je vais pas me marrer à dessiner tt ca!!
    Oui tu as bien compris,je veux des cases à cocher vide...comme dans ecell,access,etc..Il doit surement bien y avoir un moyen quand meme...
    C'est dingue que personne ne sais..


    [Modération, Alacazam : Prière de garder un langage correct, merci]

  6. #6
    Membre habitué
    Homme Profil pro
    Inscrit en
    Janvier 2003
    Messages
    332
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Janvier 2003
    Messages : 332
    Points : 146
    Points
    146
    Par défaut
    Salut,

    le seul moyen que j'ai trouve pour faire la meme chose que toi, c'est d'utiliser des QRShape integres dans ton QuickReport...
    Donc tu peux mettre des carres et des ronds......
    Voila...moi c'est tout ce que j'ai trouve comme solution, car apparament personne n'a d'idee.

    @+
    Fred

  7. #7
    ovh
    ovh est déconnecté
    Rédacteur
    Avatar de ovh
    Homme Profil pro
    Architecte devops web full stack
    Inscrit en
    Mai 2002
    Messages
    3 841
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte devops web full stack

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 841
    Points : 6 514
    Points
    6 514
    Par défaut
    Ben voilà

    Hé, Arnaud tu vas pas pleurer parce que tu dois faire un cercle et 2 rectangles ?!! Y a pire que ça dans la vie quand même
    A moins que ce formulaire doive servir à la fois à l'écran et à l'impression, auquel cas je retire bien sûr ce que j'ai dit. Mais dans ce cas à mon avis tu devrais plutôt faire un formulaire = fenêtre de dialogue et pour l'impression un QReport sans contrôles d'interface.

    Mais si c'est juste pour l'impression, dessine, ou bien prends des caractères d'une police comme Wingdings qui contiennent ce genre de formes (sauf pour la boîte d'édition bien sûr mais ça n'est qu'un rectangle ! ).

    Tutoriels sur les UPS, e-commerce, PHP, critiques de livres...

    Pensez à consulter les FAQs et les cours et tutoriels.
    FAQ Linux - Cours et tutoriels Linux - FAQ PHP - Cours et tutoriels PHP
    Ce forum est fait pour vous et surtout par vous, merci d'en respecter les règles.

    Je n'ai rien à voir avec la société www.ovh.com !

  8. #8
    Membre actif
    Profil pro
    Inscrit en
    Février 2003
    Messages
    787
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2003
    Messages : 787
    Points : 276
    Points
    276
    Par défaut
    laissez moi..je pleure là
    tu te rend pas compte??des carrés il dit...ah non ca ca ne va pas..J'arrête tout et le C++ aussi..Moi je vais en Excel avec Copain VB...là au moins,on sais imprimer des carrés tout faits...

  9. #9
    Membre habitué
    Avatar de Alacazam
    Profil pro
    Inscrit en
    Septembre 2002
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2002
    Messages : 88
    Points : 167
    Points
    167
    Par défaut
    Bonsoir,

    Allez, on va s'calmer un peu, et on va regarder ça !
    La question est bien Comment imprimer un formulaire ?
    C'est du moins ce que j'ai pu comprendre ...

    Je suppose, dans mon exemple, que tu as créé ton formulaire dans un TPanel : Panel1.

    Etape 1 : Capturer l'image du TPanel

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Image1->Height = Panel1->Height;
    Image1->Width = Panel1->Width;
    Image1->Picture->Bitmap->Height = Panel1->Height;
    Image1->Picture->Bitmap->Width = Panel1->Width;
    HDC PanelSRC = GetWindowDC(Panel1->Handle);
    BitBlt(Image1->Picture->Bitmap->Canvas->Handle, 0, 0, Panel1->Width,
    	Panel1->Height, PanelSRC, 0, 0, SRCCOPY);
    ReleaseDC(GetDesktopWindow(), PanelSRC);
    Etape 2 : Imprimer !

    Une petite recherche ... -> Imprimer un Canvas
    Il suffit d'y remplacer GetFormImage() par Image1->Picture->Bitmap

    Voilà, ce n'est peut-être pas optimisé ... mais ça fonctionne (testé sur un vieux Builder).
    (A la fin de l'impression, une exception est déclenchée ... à regarder de plus prêt)
    N'oublie pas l'en-tête
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    #include <vcl/printers.hpp>
    Pour la mise-en-page ... faudra travailler un peu ça

    Bonne Continuation,
    Mathieu

    P.S. Si c'est OK ... Bien sûr, tu n'oublieras pas le [RESOLU]
    Développeur confirmé C++, Java, Python, JS.

  10. #10
    Membre à l'essai
    Inscrit en
    Juin 2003
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Juin 2003
    Messages : 10
    Points : 10
    Points
    10
    Par défaut
    bonjour,

    ayant trouvé ce sujet très intéressant, je l'ai lu et appliqué et je confirme qu'une exception est lancée à la fermeture de mon application.
    J'ai donc cherché un peu d'ou elle pouvait venir et j'avoue que j'ai échoué.
    J'avoue egalement que je ne suis pas tres à l'aise encore avec les GetWindowDC ou les ReleaseDC donc si quelqu'un s'y connait un peu, je serai curieux de comprendre d'ou vient cette exception et aussi ou la catcher.

    merci pour votre aide
    bonne soiree
    Camille

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. impression d'un DbGrid avec quickreport
    Par fleurrouge dans le forum QuickReport
    Réponses: 6
    Dernier message: 03/03/2010, 08h19
  2. Problème d'impression avec QuickReport sous Delphi
    Par abdenour-nab dans le forum Bases de données
    Réponses: 2
    Dernier message: 31/12/2008, 10h28
  3. Erreur à l'impression avec QuickReport
    Par defluc dans le forum Composants VCL
    Réponses: 2
    Dernier message: 05/09/2007, 11h38
  4. impression avec quickreport
    Par k_boy dans le forum Bases de données
    Réponses: 4
    Dernier message: 14/06/2004, 09h06

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