import java.awt.Dimension; import javax.swing.BorderFactory; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTable; import javax.swing.border.Border; import javax.swing.table.DefaultTableModel; import javax.swing.JLabel; import javax.swing.ImageIcon; import java.awt.Color; import java.util.Vector; public class Affichage extends JPanel { private static final long serialVersionUID = 1L; private DefaultTableModel mytablemodel; private JTable table; private JLabel ImageLabel; private JPanel me; public Affichage() { this.setPreferredSize(new Dimension(800,600)); me = this; Vector head = new Vector(); head.addElement("Quantité"); head.addElement("Désignation"); head.addElement("Prix Unitaire"); head.addElement("Montant"); mytablemodel = new DefaultTableModel(new Vector(),head); table = new JTable(mytablemodel); table.setPreferredScrollableViewportSize(new Dimension(800, 400)); table.setFillsViewportHeight(true); Border line = BorderFactory.createLineBorder(new Color(150,150,150), 1); ImageLabel = new JLabel(new ImageIcon("logo.jpg")); ImageLabel.setPreferredSize(new Dimension(800,200)); ImageLabel.setBorder(line); //Create the scroll pane and add the table to it. JScrollPane scrollPane = new JScrollPane(table); //Add the scroll pane to this panel. add(ImageLabel); add(scrollPane); } public void InsertRowData(Vector rowData){ mytablemodel.addRow(rowData); } public void redessine(){ int width = me.getParent().getWidth(); int height = me.getParent().getHeight(); ImageLabel.setPreferredSize(new Dimension(width,(height/3))); table.setPreferredScrollableViewportSize(new Dimension(width, (int)(height/1.5))); // ImageLabel.revalidate(); // table.revalidate(); } }