title: Placing and resizing JPanel in JFrame
body: <p>I want to have a <code>JFrame</code> with a <code>JPanel</code> that looks like this.</p>
  
  <p><img src="https://i909.photobucket.com/albums/ac298/crizied/picture-2.png" alt="Sample layout"></p>
  
  <p>The 2 panels on the left side 60% width and 50% height each then the panel on the right side 40% width and 100% height
  How can I achieve this?</p>
  
  <pre><code>  import javax.swing.*;
    import java.awt.*;
     public class INV{
  
  private JFrame mainFrame;
  private JPanel Outer_panel1;
  private JPanel Outer_panel2;
  private JPanel Panel1;
  private JPanel Panel2;
  private JPanel Panel3;
  private JPanel Panel4;
  private JButton b1;
  private JButton b2;
  private JButton b3;
  private JComboBox List;
  private JComboBox List2;
  private JTextField Item_name;
  private JTextField Dec_qty;
  private JTextField Inc_qty;
  private static String[] Items = {"wood","steel"};
  private JTable Table;
  private JScrollPane Scroll;
  static double xsize;
  static double ysize;
  
      public INV(){
          gui();
      }
  
      public void gui(){
          mainFrame = new JFrame("sample");
          GridBagConstraints Con = new GridBagConstraints();
  
          //Left Panel
          Dec_qty=new JTextField(3); 
          Inc_qty=new JTextField(3); 
          List = new JComboBox(Items);
          List2 = new JComboBox(Items);
          b1 = new JButton("OK");
          b2 = new JButton("OK");
  
  
          Outer_panel1 = new JPanel(new GridBagLayout());
          Outer_panel1.setBackground(Color.yellow);
  
          Panel1 = new JPanel();
          Panel1.setBackground(Color.blue);
          Panel2 = new JPanel();
          Panel2.setBackground(Color.red);
  
  
  
          Outer_panel1.add(b1);
          Outer_panel1.add(b2);
  
          Panel1.add(List);
          Panel2.add(List2);
          Panel1.add(Inc_qty);
          Panel2.add(Dec_qty);
          Panel1.add(b1);
          Panel2.add(b2);
  
          Con.gridx = 0;
          Con.gridy = 0;
          Con.ipady = 300;
          Con.fill = GridBagConstraints.VERTICAL;
          Outer_panel1.add(Panel1,Con);
          Con.gridx = 0;
          Con.gridy = 1;
          Con.ipady = 0;
          Con.weighty = 1.0;
          Outer_panel1.add(Panel2,Con);
  
  
          mainFrame.add(Outer_panel1, BorderLayout.LINE_START);
  
  
          //right panel
          Outer_panel2 = new JPanel(new GridBagLayout());
          Outer_panel2.setBackground(Color.CYAN);
  
          Panel3 = new JPanel();
          Panel3.setBackground(Color.MAGENTA);
          Panel4 = new JPanel();
          Panel4.setBackground(Color.ORANGE);
  
          //Panel3
          Item_name =new JTextField(20); 
          b3 = new JButton("Search");
  
          //Panel4 and Table
          String[] columnNames = {"column1","column2"};
          Object[][] data = {{"sample1","sample2"},
                              {"sample3","sample4"}};
  
          Table = new JTable(data, columnNames);
          Table.setPreferredScrollableViewportSize(new Dimension(200,200));
          Table.setFillsViewportHeight(true);
          Scroll = new JScrollPane(Table);
  
          Panel3.add(Item_name);
          Panel3.add(b3);
          Panel4.add(Scroll);
  
          Con.gridx = 0;
          Con.gridy = 0;
          Con.ipady = 0;
          Con.weighty = 0;
          Outer_panel2.add(Panel3, Con);
          Con.gridx = 0;
          Con.gridy = 1;
          Con.ipady = 0;  
          Con.fill = GridBagConstraints.BOTH;
          Con.weighty = 1.0;
  
          Outer_panel2.add(Panel4, Con);
          mainFrame.add(Outer_panel2, BorderLayout.EAST);
  
          mainFrame.setVisible(true);
          mainFrame.setSize(900, 500);
          mainFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  
      }
  
  
  public static void main(String[] args){
      new INV();
  }
  }
  </code></pre>