Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
569 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Imprimer un Jcomponent non visible à l'ecran ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Imprimer un Jcomponent non visible à l'ecran ?

n°313812
Cédric Je​anneret
Posté le 20-02-2003 à 10:57:25  profilanswer
 

Voila... Il se trouve que je veuille imprimer un JPanel, mais sans l'afficher à l'écran... Ce que j'ai fait, c'est dériver la classe Jpanel en y mettant mon contenu...
 Cette classe implemente Printable dont voici plus ou moins la méthode print:

Code :
  1. public int print(Graphics g, PageFormat pageFormat, int index)
  2.    throws PrinterException
  3.    {
  4.  
  5.    if(index>=choeur.getMembres().nombreChanteurs())
  6.     return NO_SUCH_PAGE;
  7. setInfo(index);
  8. Dimension dim =getMinimumSize();
  9. setPreferredSize(dim);
  10. setMaximumSize(dim);
  11. PrintOptions.show.setVisible(false);
  12. PrintOptions.show.setContentPane(this);
  13. PrintOptions.show.setVisible(true);
  14. PrintOptions.show.pack();
  15. PrintOptions.show.validate();
  16. Graphics2D g2D = (Graphics2D) g;
  17.    
  18.     double scaleX = pageFormat.getImageableWidth()/dim.width;
  19.     double scaleY = pageFormat.getImageableHeight()/dim.height;
  20.     double scale = Math.min(scaleX,scaleY); 
  21.    
  22.     g2D.translate(pageFormat.getImageableX(), pageFormat.getImageableY());
  23.     g2D.scale(scale,scale);   
  24.                  
  25.     print(g2D);         
  26.     return PAGE_EXISTS;
  27. }


 
tel quel ca fonctionne avec le nombre de page et tout etut.... si maintenant je supprime les lignes qui commence avec PrintOptions.show (show est une Jframe), mon imprimante me sort des pages blanches....
 
 
Mais question est donc:
 
peut on imprimer des JComponent sans les foutre dans une Jframe et les afficher à l'écran ?
 
Merci d'avance...

mood
Publicité
Posté le 20-02-2003 à 10:57:25  profilanswer
 

n°314265
Cédric Je​anneret
Posté le 20-02-2003 à 18:43:48  profilanswer
 

Je crois que j'ai trouvé...
 
En faite, JPanel est un composant "sans poids"
 
Mais pour l'imprimer, il faut qu'il soit heavy weight( comme JFrame)
 
alors au lieu d'étendre JPanel, j'etend JFrame...
Et tant pis pour les ressources mem.
 
Voila
 
J'espere que ca va etre utile, parceque j'ai vu  pas mal de gars qui avaient le meme prob que moi, mais sans avoir trouver de solutions...


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Imprimer un Jcomponent non visible à l'ecran ?

 

Sujets relatifs
Comment imprimer le contenu d'une form?[C]faire qu'une saisie n'apparaisse pas telqu'elle a l'ecran...
Peut on recuperer la resolution d'un ecran client avec Apache/PHP ?[MFC] Comment savoir si une fenêtre MDI est partiellement visible ???
Fonctions de media player sur page web ! PLEIN ECRANcomment mettre un meme fond d'ecran sur 2 frames
[swing/awt] taillo dispo à l'écranquestion : recuperer une valeur à l'ecran ?
[HTML] Imprimer un grand tableauComment mettre une page html en fond ecran W2000
Plus de sujets relatifs à : Imprimer un Jcomponent non visible à l'ecran ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR