liaison d'imprimante

liaison d'imprimante - Java - Programmation

Marsh Posté le 24-03-2004 à 20:08:35    

Bonsoir a tous,
 
je tente de lier pour une appli java ma menubar a mon imprimante
en implementant la methode printm
et la je coince car je manque de connaissance sur sont implementation
et en regardant dans different bouquin ( biblio de classe, le programmeur java2 ) je n'est rien trouvé
si quelqu'un aurait des infos sur un livre ou un lien ou je puisse trouver ces renseignement cela serait genial
 
je joint mon code avec le debut de l'implementation menubar/inprimante
 
D'avance merci a tous

Code :
  1. import java.awt.event.ActionListener;
  2. import java.awt.*;
  3. import javax.swing.*;
  4. import javax.swing.table.*;
  5. import javax.swing.border.*;
  6. import java.awt.Dimension;
  7. import java.awt.event.WindowAdapter;
  8. import java.awt.event.WindowEvent;
  9. import java.awt.Color;
  10. public class CoupeGeologique extends JFrame {
  11.  
  12.    
  13.    
  14.    
  15.    
  16.                
  17.      
  18.     public CoupeGeologique(){
  19.         super("Coupe Geologique" );
  20.         setSize(800,600);
  21.         setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  22.         Container Pane=getContentPane();
  23.         FlowLayout flow=new FlowLayout(FlowLayout.CENTER);
  24.         setVisible(true);
  25.        
  26.                
  27.            
  28.      //Panneau global de fond
  29.         JPanel fond = new JPanel(new BorderLayout());
  30.         fond.setBackground(Color.blue);
  31.         getContentPane().add(fond);
  32.         setVisible(true);
  33.        
  34.                      
  35.         //les menus :  
  36.         MenuBar mbar = new MenuBar( );
  37.         Menu meprinc1 = new Menu("Fichier" );
  38.         Menu meprinc2 = new Menu("Edition" );
  39.         Menu meprinc3 = new Menu("Affichage" );
  40.         Menu meprinc4 = new Menu("Insertion" );
  41.         Menu meprinc5 = new Menu("Format" );
  42.         Menu meprinc6 = new Menu("Aide" );
  43.         MenuItem item1 = new MenuItem("Enregistrer" );
  44.         MenuItem item2 = new MenuItem("Enregistrer sous" );
  45.         MenuItem item3 = new MenuItem("Imprimer" );
  46.         MenuItem item4 = new MenuItem("Apercu avant impression" );
  47.         MenuItem item5 = new MenuItem("Mise en page" );
  48.         MenuItem item6 = new MenuItem("Envoyer" );
  49.         MenuItem item7 = new MenuItem("Quitter" );
  50.         setMenuBar(mbar);
  51.         meprinc1.add(item1);
  52.         meprinc1.add(item2);
  53.         meprinc1.add(item3);
  54.         meprinc1.add(item4);
  55.         meprinc1.add(item5);
  56.         meprinc1.add(item6);
  57.         meprinc1.add(item7);     
  58.         mbar.add(meprinc1);
  59.         mbar.add(meprinc2);
  60.         mbar.add(meprinc3);
  61.         mbar.add(meprinc4);
  62.         mbar.add(meprinc5);
  63.         mbar.add(meprinc6);
  64.        
  65.         meprinc1.add(item3);
  66.         item3.setActionCommand("Imprimer" );
  67.         item3.addActionListener(new ActionListener(){
  68.         public void actionPerformed (ActionEvent m) {
  69.         printme();
  70.         }});
  71.         JPanel row1= new JPanel();
  72.         GridLayout grid=new GridLayout(5,5);
  73.         row1.setBackground(Color.blue);
  74.   fond.add(row1, BorderLayout.CENTER);
  75.         row1.setLayout(grid);       
  76.         setContentPane(row1);
  77.         setVisible(true);
  78.        
  79. //definition de la premiere ligne
  80.        JPanel row2=new JPanel();
  81.        JLabel NumberFromFileLabel =new JLabel("Numeros de Dossier:",JLabel.CENTER);
  82.        row2.add(NumberFromFileLabel);
  83.        JTextField NumerosdeDossier=new JTextField(10);
  84.        FlowLayout layout1 = new FlowLayout(FlowLayout.CENTER,10,10);
  85.        Container Pane1 = getContentPane();
  86.        Pane1.setLayout(layout1);
  87.        row2.setLayout(layout1);
  88.        row2.add(NumerosdeDossier);       
  89.        Pane1.add (NumberFromFileLabel);
  90.        Pane1.add(NumerosdeDossier); 
  91.        setContentPane(Pane1);
  92.      
  93.        
  94.      
  95.        JPanel row3=new JPanel();
  96.        JLabel SiteLabel=new JLabel("Chantier:",JLabel.CENTER);
  97.        row3.add(SiteLabel);
  98.        JTextField Chantier=new JTextField(17);
  99.        FlowLayout layout2=new FlowLayout(FlowLayout.CENTER,10,10);
  100.        Container pane2= getContentPane();
  101.        pane2.setLayout(layout2);
  102.        row3.add(Chantier);
  103.        row3.setLayout(layout2);
  104.        pane2.add(SiteLabel);
  105.        pane2.add(Chantier);
  106.        setContentPane(pane2);
  107.   //definition de la troisieme ligne
  108.        JPanel row4=new JPanel();
  109.        JLabel ResponsibleFromBusinessLabel=new JLabel("Responsable de l Affaire:" );
  110.        row4.add(ResponsibleFromBusinessLabel);
  111.        JTextField ResponsabledelAffaire=new JTextField(12);
  112.        FlowLayout flow2=new FlowLayout(FlowLayout.LEFT);
  113.        Container pane3= getContentPane();
  114.        pane3.setLayout(flow2);
  115.        row4.add(ResponsabledelAffaire);
  116.        pane3.add(ResponsibleFromBusinessLabel);
  117.        pane3.add(ResponsabledelAffaire);
  118.        setContentPane(pane3);
  119.      //definition de la deuxieme ligne
  120.         JPanel row5=new JPanel();
  121.         JLabel TypesFromDrillingLabel =new JLabel("Types de Forage:" );
  122.         row5.add(TypesFromDrillingLabel);
  123.         JTextField TypesdeForage=new JTextField();
  124.         FlowLayout flow3 = new FlowLayout(FlowLayout.LEFT);
  125.         Container pane4 = getContentPane();
  126.         pane4.setLayout(flow3);
  127.         row5.add(TypesdeForage);       
  128.         pane4.add (TypesFromDrillingLabel);
  129.         pane4.add(TypesdeForage); 
  130.         setContentPane(pane4);
  131.      
  132.        
  133.         JComboBox SiteAndTypeFromDrilling =new JComboBox();
  134.         FlowLayout flow4= new FlowLayout(FlowLayout.LEFT);
  135.         Container pane5=getContentPane();
  136.         SiteAndTypeFromDrilling.addItem("Sondage destructif" );
  137.         SiteAndTypeFromDrilling.addItem("Sondage carotte" );
  138.         SiteAndTypeFromDrilling.addItem("Sondage pressio" );
  139.         SiteAndTypeFromDrilling.addItem("Forage d eau" );
  140.         SiteAndTypeFromDrilling.addItem("Forage geothermique" );
  141.         pane5.setLayout(flow4);
  142.         pane5.add(SiteAndTypeFromDrilling);
  143.         setContentPane(pane5);
  144.         SiteAndTypeFromDrilling.setEditable(true);
  145.         //definition de la sixieme ligne  
  146.         JPanel row6=new JPanel();
  147.         JLabel MannerAndTypeAnyDrillingLabel=new JLabel("Moyens mis en Oeuvre:" );
  148.         row6.add(MannerAndTypeAnyDrillingLabel);
  149.         JTextField MoyensMisEnOeuvre=new JTextField();
  150.         FlowLayout flow5=new FlowLayout(FlowLayout.LEFT);
  151.         Container pane6= getContentPane();
  152.         pane6.setLayout(flow5);
  153.         row6.add(MoyensMisEnOeuvre);
  154.         pane6.add(MannerAndTypeAnyDrillingLabel);
  155.         pane6.add(MoyensMisEnOeuvre);
  156.         setContentPane(pane6);
  157.         //definition de la septieme ligne
  158.         JComboBox MannerAnyDrilling =new JComboBox();
  159.         FlowLayout flow6= new FlowLayout(FlowLayout.CENTER);
  160.         Container pane7=getContentPane();
  161.         MannerAnyDrilling.addItem("Forage hydraulique" );
  162.         MannerAnyDrilling.addItem("Forage pneumatique" );
  163.         MannerAnyDrilling.addItem("Forage rotary" );
  164.         pane7.setLayout(flow6);
  165.         pane7.add(MannerAnyDrilling);
  166.         setContentPane(pane7);
  167.         MannerAnyDrilling.setEditable(true);
  168.         JPanel row7=new JPanel();
  169.         JLabel TypesFromCompressorLabel=new JLabel("Compresseur:" );
  170.         row7.add(TypesFromCompressorLabel);
  171.         JTextField Compresseur=new JTextField(12);
  172.         FlowLayout flow7=new FlowLayout(FlowLayout.RIGHT);
  173.         Container pane8= getContentPane();
  174.         pane8.setLayout(flow7);
  175.         row7.add(Compresseur);
  176.         pane8.add(TypesFromCompressorLabel);
  177.         pane8.add(Compresseur);
  178.         setContentPane(pane8);
  179.         //definition de la sixieme ligne  
  180.         JPanel row8=new JPanel();
  181.         JLabel TypesFromToolsLabel=new JLabel("Types d' Outils :" );
  182.         row8.add(TypesFromToolsLabel);
  183.         JTextField TypedOutils=new JTextField();
  184.         FlowLayout flow8=new FlowLayout(FlowLayout.LEFT);
  185.         Container pane9= getContentPane();
  186.         pane9.setLayout(flow8);
  187.         row8.add(TypedOutils);
  188.         pane9.add(TypesFromToolsLabel);
  189.         pane9.add(TypedOutils);
  190.         setContentPane(pane9);
  191.         //definition de la septieme ligne
  192.         JComboBox Tools =new JComboBox();
  193.         FlowLayout flow9= new FlowLayout(FlowLayout.LEFT);
  194.         Container pane10=getContentPane();
  195.         Tools.addItem("Tariere" );
  196.         Tools.addItem("Taillant" );
  197.         Tools.addItem("Fichtail" );
  198.         Tools.addItem("Marteau fond de trou" );
  199.         Tools.addItem("Odex" );
  200.         Tools.addItem("Couronne diams" );
  201.         Tools.addItem("Couronne carbure" );
  202.         Tools.addItem("Couronne mixte" );
  203.         Tools.addItem("Trepans" );
  204.         pane10.setLayout(flow9);
  205.         pane10.add(Tools);
  206.         setContentPane(pane10);
  207.         Tools.setEditable(true);
  208.         //definition de la sixieme ligne  
  209.         JPanel row9=new JPanel();
  210.         JLabel FromLabel=new JLabel("Diametre De A :" );
  211.         row9.add(FromLabel);
  212.         JTextField DA=new JTextField(12);
  213.         FlowLayout flow10=new FlowLayout(FlowLayout.LEFT);
  214.         Container pane11= getContentPane();
  215.         pane11.setLayout(flow10);
  216.         row9.add(DA);
  217.         pane11.add(FromLabel);
  218.         pane11.add(DA);
  219.         setContentPane(pane11);
  220.         //definition de la quatrieme ligne ligne
  221.         JPanel row10=new JPanel();
  222.         JLabel TypeanycarottageLabel=new JLabel("Types des Carottages :" );
  223.         row10.add(TypeanycarottageLabel);
  224.         JTextField CAROTTAGE=new JTextField();
  225.         FlowLayout flow11=new FlowLayout(FlowLayout.LEFT);
  226.         Container pane12= getContentPane();
  227.         pane12.setLayout(flow11);
  228.         row10.add(CAROTTAGE);
  229.         pane12.add(TypeanycarottageLabel);
  230.         pane12.add(CAROTTAGE);
  231.         setContentPane(pane12);
  232.         //definition de la cinqieme ligne
  233.         JComboBox Carottage =new JComboBox();
  234.         FlowLayout flow12=new FlowLayout(FlowLayout.LEFT);
  235.         Container pane13=getContentPane();
  236.         Carottage.addItem("Rotation carottier" );
  237.         Carottage.addItem("Carottier Battu" );
  238.         Carottage.addItem("Tubage" );
  239.         Carottage.addItem("Carottier Cable" );
  240.         pane13.setLayout(flow12);
  241.         pane13.add(Carottage);
  242.         setContentPane(pane13);
  243.         Carottage.setEditable(true);
  244.         //definition de la sixieme ligne  
  245.         JPanel row11=new JPanel();
  246.         JLabel FromToLabel=new JLabel("Diametre De a:" );
  247.         row11.add(FromToLabel);
  248.         JTextField Dea=new JTextField(12);
  249.         FlowLayout flow13=new FlowLayout(FlowLayout.LEFT);
  250.         Container pane14= getContentPane();
  251.         pane14.setLayout(flow13);
  252.         row11.add(Dea);
  253.         pane14.add(FromToLabel);
  254.         pane14.add(Dea);
  255.         setContentPane(pane14);
  256.         //definition de la quatrieme ligne ligne
  257.         JPanel row12=new JPanel();
  258.         JLabel TypeanyTubageLabel=new JLabel("Types de Tubages :" );
  259.         row12.add(TypeanyTubageLabel);
  260.         JTextField TypesdeTubages=new JTextField();
  261.         FlowLayout flow14=new FlowLayout(FlowLayout.LEFT);
  262.         Container pane15= getContentPane();
  263.         pane15.setLayout(flow14);
  264.         row12.add(TypesdeTubages);
  265.         pane15.add(TypeanyTubageLabel);
  266.         pane15.add(TypesdeTubages);
  267.         setContentPane(pane15);
  268.         //definition de la cinqieme ligne
  269.         JComboBox Tubage =new JComboBox();
  270.         FlowLayout flow15=new FlowLayout(FlowLayout.LEFT);
  271.         Container pane16=getContentPane();
  272.         Tubage.addItem("120/140 mm" );
  273.         Tubage.addItem("98/114 mm" );
  274.         Tubage.addItem("70/90 mm" );
  275.         Tubage.addItem("ODEX ET AUTRES" );
  276.         pane16.setLayout(flow15);
  277.         pane16.add(Tubage);
  278.         setContentPane(pane16);
  279.         Tubage.setEditable(true);
  280.        
  281.         JPanel row13=new JPanel();
  282.         JLabel RefusalToLabel=new JLabel("Refus A:" );
  283.         row13.add(RefusalToLabel);
  284.         JTextField RefusA=new JTextField(10);
  285.         FlowLayout flow16=new FlowLayout(FlowLayout.RIGHT);
  286.         Container pane17= getContentPane();
  287.         pane17.setLayout(flow14);
  288.         row13.add(RefusA);
  289.         pane17.add(RefusalToLabel);
  290.         pane17.add(RefusA);
  291.         setContentPane(pane17);
  292.    
  293.         JPanel row14=new JPanel();
  294.         JLabel PzLabel=new JLabel("Piezo:" );
  295.         row14.add(PzLabel);
  296.         JTextField Piezo=new JTextField(10);
  297.         FlowLayout flow17=new FlowLayout(FlowLayout.CENTER);
  298.         Container pane18= getContentPane();
  299.         pane18.setLayout(flow15);
  300.         row14.add(Piezo);
  301.         pane18.add(PzLabel);
  302.         pane18.add(Piezo);
  303.         setContentPane(pane18);
  304.        
  305.        
  306.         // Take the dummy data from SwingSet.
  307.         final String[] names = {"Nature des Terrains", "Vitesse P ms","Vitesse S ms", "Habituel Color",
  308.                                 "De A","Nature de Sol","Couleur","Masse Volumique", "Present oui non"};
  309.         final Object[][] data = {
  310.     {"Eboulis Terre vegetale", "300-700","100-300", "Maroon","","","", new Integer(1), new Boolean(true)},
  311.     {"Sable sec", "400-1200","100-500", "Blanc","","","", new Integer(1), new Boolean(false)},
  312.     {"Sable humide", "1500-4000","400-1200", "yellow","","","", new Integer(1), new Boolean(false)},
  313.     {"Argile", "1100-2500","200-800", "Turquois","","","", new Integer(1), new Boolean(true)},
  314.     {"Marnes", "2000-3000","750-1500", "Blue","","","", new Integer(1), new Boolean(false)},
  315.     {"Gres", "3000-4500","1500-2800", "Blanc","","","", new Integer(1), new Boolean(false)},
  316.     {"Calcaires", "3500-6000","2000-3300", "blanc","","","", new Integer(1), new Boolean(false)},
  317.     {"Craies", "2300-2600","1100-1300", "Blanc","","","", new Integer(1), new Boolean(false)},
  318.     {"Sel", "4500-5500","2500-3100", "Blanc","","","",  new Integer(1), new Boolean(false)},
  319.     {"Anhydrite", "4000-5500","2500-3100", "Purple","","","",  new Integer(1), new Boolean(false)},
  320.     {"Dolomie", "3500-6500","1900-3600", "Purple","","","",  new Integer(1), new Boolean(false)},
  321.     {"Granites", "4500-6000","2500-3300", "Gris","","","",  new Integer(1), new Boolean(false)},
  322.     {"Basalte", "5000-6000","2800-3400", "Maroon","","","",  new Integer(1), new Boolean(false)},
  323.     {"Charbon", "2200-2700","1000-1400", "Black","","","",  new Integer(1), new Boolean(false)},
  324.     {"Eau", "1450-1500","1000-1400", "Blue","","","",  new Integer(1), new Boolean(false)},
  325.     {"Glace", "3400-3800","1700-1900", "Blanc","","","",  new Integer(1), new Boolean(false)},
  326.     {"Huile", "1200-1250","1700-1900", "Green","","","",  new Integer(1), new Boolean(false)},
  327.     {"Quartz", "","", "Red","","","",  new Integer(1), new Boolean(false)},
  328.     {"or", "","", "Yellow","","","",  new Integer(1), new Boolean(false)},
  329.     {"Diamant", "","", "Blue","","","",  new Integer(1), new Boolean(false)},
  330.     {"Petrole", "", "","Black","","","",  new Integer(1), new Boolean(false)}
  331.         };
  332.         // Create a model of the data.
  333.         TableModel dataModel = new AbstractTableModel() {
  334.             // These methods always need to be implemented.
  335.             public int getColumnCount() { return names.length; }
  336.             public int getRowCount() { return data.length;}
  337.             public Object getValueAt(int row, int col) {return data[row][col];}
  338.             // The default implementations of these methods in
  339.             // AbstractTableModel would work, but we can refine them.
  340.             public String getColumnName(int column) {return names[column];}
  341.             public Class getColumnClass(int c) {return getValueAt(0, c).getClass();}
  342.             public boolean isCellEditable(int row, int col) {return true;}
  343.             public void setValueAt(Object aValue, int row, int column) {
  344.                 System.out.println("Setting value to: " + aValue);
  345.                 data[row][column] = aValue;
  346.             }
  347.          };
  348.         // Create the table
  349.         JTable tableView = new JTable(dataModel);
  350.         // Turn off auto-resizing so that we can set column sizes programmatically.  
  351. // In this mode, all columns will get their preferred widths, as set blow.  
  352.         tableView.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
  353. // Create a combo box to show that you can use one in a table.
  354. JComboBox comboBox = new JComboBox();
  355. comboBox.addItem("Maronn" );
  356. comboBox.addItem("Orange" );
  357. comboBox.addItem("Yellow" );
  358. comboBox.addItem("Green" );
  359. comboBox.addItem("Blue" );
  360. comboBox.addItem("Indigo" );
  361. comboBox.addItem("Violet" );
  362.       comboBox.addItem("Beige" );
  363.       comboBox.addItem("blanc" );
  364.         TableColumn colorColumn = tableView.getColumn("Habituel Color" );
  365.         // Use the combo box as the editor in the "Habituel Color" column.
  366.         colorColumn.setCellEditor(new DefaultCellEditor(comboBox));
  367.         // Set a pink background and tooltip for the Color column renderer.
  368.         DefaultTableCellRenderer colorColumnRenderer = new DefaultTableCellRenderer();
  369.         colorColumnRenderer.setBackground(Color.pink);
  370.         colorColumnRenderer.setToolTipText("Click for combo box" );
  371.         colorColumn.setCellRenderer(colorColumnRenderer);
  372.         // Set a tooltip for the header of the colors column.
  373. TableCellRenderer headerRenderer = colorColumn.getHeaderRenderer();
  374. if (headerRenderer instanceof DefaultTableCellRenderer)
  375.     ((DefaultTableCellRenderer)headerRenderer).setToolTipText("Hi Mom!" );
  376. // Set the width of the "Present oui non" column.
  377.         TableColumn presentouinonColumn = tableView.getColumn("Present oui non" );
  378.         presentouinonColumn.setPreferredWidth(100);
  379. // Show the values in the "Masse Volumique" column in different colors.
  380.         TableColumn numbersColumn = tableView.getColumn("Masse Volumique" );
  381.         DefaultTableCellRenderer numberColumnRenderer = new DefaultTableCellRenderer() {
  382.     public void setValue(Object value) {
  383.         int cellValue = (value instanceof Number) ? ((Number)value).intValue() : 0;
  384.         setForeground((cellValue > 30) ? Color.black : Color.red);
  385.         setText((value == null) ? "" : value.toString());
  386.     }
  387.         };
  388.         numberColumnRenderer.setHorizontalAlignment(JLabel.RIGHT);
  389.         numbersColumn.setCellRenderer(numberColumnRenderer);
  390.         numbersColumn.setPreferredWidth(110);
  391.         // Finish setting up the table.
  392.         JScrollPane scrollpane = new JScrollPane(tableView);
  393. scrollpane.setBorder(new BevelBorder(BevelBorder.LOWERED));
  394.         scrollpane.setPreferredSize(new Dimension(800, 600));
  395.         getContentPane().add(scrollpane);
  396.         pack();
  397.         setVisible(true);
  398.          
  399.     }
  400.     public static void main(String[]arguments){
  401.         CoupeGeologique coupe=new CoupeGeologique();
  402.        
  403.     }
  404.     /***  methodes heritées de l interface WindowListener ***/
  405.     public void windowOpened(WindowEvent e)
  406.     {}
  407.     public void windowClosing(WindowEvent e)
  408.     {}
  409.     public void windowClosed(WindowEvent e)
  410.     {}
  411.     public void windowIconified(WindowEvent e)
  412.     {}
  413.     public void windowDeiconified(WindowEvent e)
  414.     {}
  415.     public void windowActivated(WindowEvent e)
  416.     {}
  417.     public void windowDeactivated(WindowEvent e)
  418.     {}
  419.      
  420. }

et encore merci

Reply

Marsh Posté le 24-03-2004 à 20:08:35   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed