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 :

Probleme apres impression


Sujet :

C++Builder

  1. #1
    Membre éclairé Avatar de Baxter67
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 270
    Par défaut Probleme apres impression
    Bonjours, jai un gros prob :
    Apres l'impression d'une form qui fonctione plus ou moin bien, de temps en temps jai un freezze totale de l'application, quand je clique sur un bouton laffichage devien nimorte quoi.
    Dans le gestionnaire de tache a ce moment la jai deux fois la meme application (mon exe) et tous les deux en status pas de reponse ... je ne comprend vraiment pas ...
    Quesqu'un pourais maider ?

    code d'impression :
    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
     
    void ImprimerFormImpre(TForm *Form)
    {
      TRect rd;
      TPrinter *Prntr = Printer();
     
            rd = Rect(0, 0, Prntr->PageWidth, Prntr->PageHeight);
            Graphics::TBitmap *Temp = new Graphics::TBitmap;
     
            Temp->Assign(Form->GetFormImage());
     
            //DESSIN DES CADRE
     
            //Enleve le bouton Imprimé
            Temp->Canvas->Brush->Color=clWhite;
            Temp->Canvas->FillRect(Rect(592,444,800,600));
     
            //Enleve le bouton Retour
            Temp->Canvas->Brush->Color = clWhite;
            Temp->Canvas->FillRect(Rect(8,444,185,564));
     
            Temp->Canvas->Font->Color = clBlack;
            Temp->Canvas->Font->Size = 12;
            Temp->Canvas->Font->Name = "Arial";
            Temp->Canvas->TextOutA(12, 468, "Visa Chef d'équipe :");
            Temp->Canvas->TextOutA(12, 508, "Visa Oenologue :");
     
            Temp->Canvas->Brush->Color = clWhite;
            Temp->Canvas->TextOutA(595, 468, FormatDateTime("ddd ' le ' d MMMM  yyyy", Now()));
            Temp->Canvas->TextOutA(595, 508, FormatDateTime("HH : mm",Now()));
     
            //pour eviter une page blanche ajouter la ligne suivante
            Temp->PixelFormat = pf24bit; // a adapter
            //TPixelFormat {pfDevice, pf1bit, pf4bit, pf8bit, pf15bit, pf16bit, pf24bit, pf32bit, pfCustom}
     
            Prntr->BeginDoc();
            Prntr->Canvas->StretchDraw(rd, Temp);
            Prntr->EndDoc();
    }
    Cordialement Baxter

    PS et le plus bizare c'est que le prog na pas de rep mais que la com avec l'automate fonctione toujours, c'est a priori juste l'affichage qui est planté

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France, Drôme (Rhône Alpes)

    Informations forums :
    Inscription : Juin 2006
    Messages : 78
    Par défaut
    Je ne sais pas si cela va résoudre tous tes problèmes, mais je te conseille de détruire ta bitmap Temp après l'impression.

  3. #3
    Membre éclairé Avatar de Baxter67
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 270
    Par défaut
    oui c vrai, je l'ai rajouter

    Mais sa ne change rien

  4. #4
    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 Baxter67
    Pourquoi ne fait tu pas au niveau le la Form tes ajouts et suppression exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    void ImprimerFormImpre(TForm *Form)
    {
    BoutonImpression->Visible = false;
    BoutonRetour->Visible = false;
      TRect rd;
      TPrinter *Prntr = Printer();
     
            rd = Rect(0, 0, Prntr->PageWidth, Prntr->PageHeight);
            Graphics::TBitmap *Temp = new Graphics::TBitmap;
     
            Temp->Assign(Form->GetFormImage());
    tu retabli la propriete visible a la fin du code, idem pour les autres chaines que tu ecrit, comme cela tu ne transmet a l'imprimante qu'une copie d'ecran, a essayer

  5. #5
    Membre éclairé Avatar de Baxter67
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 270
    Par défaut
    jai pas utiliser les propriété visible pour pas provoquer un clignotement du bouton au moment de limpression en automatique.

    Mais je croie avoir trouver la solution.
    Les form qui contienne les chart je laise toujours leur Visible a true.
    Pour les affichier je fais Show pour les enlever je fais un show d'une autre, mais je fais jamais hide

    Et a priori sa fonctionne.

    Cordialement Baxter

Discussions similaires

  1. Réponses: 1
    Dernier message: 27/02/2009, 11h04
  2. Problème d'impression avec CUPS
    Par piff62 dans le forum Applications et environnements graphiques
    Réponses: 2
    Dernier message: 14/02/2005, 11h46
  3. Mise à jour enregistrements après impression
    Par alalau dans le forum Access
    Réponses: 2
    Dernier message: 17/12/2004, 16h13
  4. [TP]problème d'impression en turbopascal
    Par matusa96 dans le forum Turbo Pascal
    Réponses: 4
    Dernier message: 14/02/2004, 17h17
  5. Probleme d'impression avec la méthode TForm->Print()
    Par Kid Icarus dans le forum C++Builder
    Réponses: 13
    Dernier message: 31/07/2002, 14h26

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