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

avec Java Discussion :

Comment faire un bouton d'impression


Sujet :

avec Java

  1. #1
    Membre du Club
    Inscrit en
    Novembre 2010
    Messages
    221
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 221
    Points : 61
    Points
    61
    Par défaut Comment faire un bouton d'impression
    Bonjour
    Je voudrais ajouter un bouton d'impression qui m'imprime le JFrame la où il se trouve et qui imprime des données de ma base de donée
    Qui pourra le fournir le code ou la méthode pour faire ceci, j'ai trouvé sur le net un certain JPDF mais je sais pas comment l'utiliser
    Merci

  2. #2
    Modérateur

    Avatar de Robin56
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juin 2009
    Messages
    5 297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juin 2009
    Messages : 5 297
    Points : 13 670
    Points
    13 670
    Par défaut
    Citation Envoyé par khadi8 Voir le message
    Qui pourra le fournir le code ou la méthode pour faire ceci
    Ce n'est pas le principe du forum. Son principe est de poser un problème (avec tout ce qu'il peut y avoir en précision de logs, de codes, de but, etc...). Ensuite, les gens orientent, aident bénévolement en apportant leurs connaissances complémentaires.

    Tu as donc peu de chance de trouver quelqu'un te fournissant un code tout fait (et ceci même en période de Noël).

  3. #3
    Membre du Club
    Inscrit en
    Novembre 2010
    Messages
    221
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 221
    Points : 61
    Points
    61
    Par défaut
    Citation Envoyé par Robin56 Voir le message
    Ce n'est pas le principe du forum. Son principe est de poser un problème (avec tout ce qu'il peut y avoir en précision de logs, de codes, de but, etc...). Ensuite, les gens orientent, aident bénévolement en apportant leurs connaissances complémentaires.

    Tu as donc peu de chance de trouver quelqu'un te fournissant un code tout fait (et ceci même en période de Noël).
    OK ! On fête pas Noël chez moi
    voila un code que j'ai trouvé et j'ai une question
    String filename = ("C:\\test.txt");
    PrintRequestAttributeSet pras = new
    HashPrintRequestAttributeSet();
    DocFlavor flavor = DocFlavor.INPUT_STREAM.AUTOSENSE;
    PrintService printService[] =
    PrintServiceLookup.lookupPrintServices(flavor, pras);
    PrintService defaultService =
    PrintServiceLookup.lookupDefaultPrintService();
    PrintService service = ServiceUI.printDialog(null, 200,
    200,printService, defaultService, flavor, pras);
    if (service != null) {
    DocPrintJob job = service.createPrintJob();
    FileInputStream fis;
    try {
    fis = new FileInputStream(filename);
    DocAttributeSet das = new HashDocAttributeSet();
    Doc doc = new SimpleDoc(fis, flavor, das);
    try {
    job.print(doc, pras);
    try {
    Thread.sleep(10000);
    } catch (InterruptedException ex) {
    ex.printStackTrace();
    }
    } catch (PrintException ex) {
    ex.printStackTrace();
    }
    } catch (FileNotFoundException ex) {
    ex.printStackTrace();
    }
    }
    au niveau de cette ligne
    String filename = ("C:\\test.txt");
    ici il donne le chemin pour un fichier texte et moi je veux imprimer ma classe JFrame actuelle, je remplace cette ligne par quoi pour pouvoir imprimer ma JFrame comme elle est?
    Merci

  4. #4
    Membre du Club
    Inscrit en
    Novembre 2010
    Messages
    221
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 221
    Points : 61
    Points
    61
    Par défaut
    Monsieur ROBIN j'ai besoin d'aide
    au secours !!

  5. #5
    Membre émérite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2008
    Messages
    1 190
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 190
    Points : 2 659
    Points
    2 659
    Par défaut
    Remarque : On met le code dans des balises CODE.

    Je ne sais pas comment imprimer le contenu d'une JFrame, mais tu peux toujours faire une copie d'ecran à l'emplacement de ta JFrame et imprimer l'image résultante.

  6. #6
    Membre actif Avatar de pendoRa
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Mai 2007
    Messages
    317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2007
    Messages : 317
    Points : 278
    Points
    278
    Par défaut
    Bonjour,

    effectivement khadi8 essayes de faire un effort!


    En quelques secondes de recherche j'ai trouvé ceci ( sur java2s.com )

    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
    public class PrintUIWindow implements Printable, ActionListener {
     
      JFrame frameToPrint;
     
      public int print(Graphics g, PageFormat pf, int page) throws PrinterException {
     
        if (page > 0) { /* We have only one page, and 'page' is zero-based */
          return NO_SUCH_PAGE;
        }
     
        /*
         * User (0,0) is typically outside the imageable area, so we must translate
         * by the X and Y values in the PageFormat to avoid clipping
         */
        Graphics2D g2d = (Graphics2D) g;
        g2d.translate(pf.getImageableX(), pf.getImageableY());
     
        /* Now print the window and its visible contents */
        frameToPrint.printAll(g);
     
        /* tell the caller that this page is part of the printed document */
        return PAGE_EXISTS;
     
    public void actionPerformed(ActionEvent e) {
        PrinterJob job = PrinterJob.getPrinterJob();
        job.setPrintable(this);
        boolean ok = job.printDialog();
        if (ok) {
          try {
            job.print();
          } catch (PrinterException ex) {
            /* The job did not successfully complete */
          }
        }
      }
     
      public PrintUIWindow(JFrame f) {
        frameToPrint = f;
      }
    Donc tu créés une action ( sur un bouton par exemple ) ensuite tu utilises les imports relatifs à ton projet. Puis tu passes en paramètre d'impression ta JFrame.

    Je ne te donnes pas tout le code car comme dit plus haut ce n'est pas le but du forum, mais avec ceci tu devrais pouvoir réussi à imprimer quelque chose !

Discussions similaires

  1. [FLASH 8] Comment faire des boutons radio ?
    Par jbidou88 dans le forum Flash
    Réponses: 8
    Dernier message: 08/06/2006, 15h08
  2. Comment faire un bouton parcourir JSP Struts
    Par jehlg dans le forum Struts 1
    Réponses: 3
    Dernier message: 19/04/2006, 14h15
  3. Comment Faire un serveur d'impression sous linux !!
    Par pedrosystem dans le forum Applications et environnements graphiques
    Réponses: 6
    Dernier message: 23/03/2006, 10h29
  4. Comment faire un aperçu avant impression (D7PRO)?
    Par tipiweb dans le forum Langage
    Réponses: 2
    Dernier message: 13/03/2006, 23h30
  5. Comment faire un bouton multi-choix ?
    Par richard038 dans le forum Composants VCL
    Réponses: 9
    Dernier message: 03/10/2005, 21h58

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