I have created a button and when I click it I want to open another frame. The button was working before but now it won't open the frame.
First program:
// By: Qamar, Dimitri and Ehsan 
// Date: 21/12/2017
// Description: This is the front page of the Address Book
import javax.swing.*;
import java.awt.event.*;
import java.awt. *;
import java.io.*;
   public class AddressBook implements ActionListener     // Create a new class Address Book
{
    JFrame Start=new JFrame("Address Book");   // Set name of Frame
    JButton Open;   // Create a new button Open
 {
      Open=new JButton("OPEN");  // set name of button
      Start.setSize(500,600);   // set size of frame  
      Start.add(new JLabel(new ImageIcon("backgroundforlab.jpg")));   // add background picture
      Start.setVisible(true);  // make the frame visible 
      Start.setLayout(null);
      Start.setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);  
      Start.getContentPane().add(Open);  //add button to frame
      Open.setBounds(100,385,295,88);   // set size of button
      Open.addActionListener(this);
 }
   public void actionPerformed(ActionEvent e)
{
      Start.dispose();  // When button is clicked close frame and open book222
      Book c=new Book();
}
   public static void main(String ag[])
  {
      AddressBook A=new AddressBook();          // Run AddressBook
  }
}
Now, the frame I want to open:
import javax.swing.*;
import java.awt.event.*;
import java.awt. *;
import java.io.*;
import java.io.FileWriter;           // Importing all necessary packages/extensions 
import java.awt.Color;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.table.DefaultTableModel;
// Created By: Qamar Irfan, Dimitri Kolechi and Ehsan Saleh
// Date: 21/12/2017
// Description: This is the main program of Address Book. You can Create, Delete, Save and import contacts to this book. 
 public class Book {
 public static void main(String[] args){
   // Making the layout of the frame and adding all buttons and labels
    JFrame Start=new JFrame("Creating Contacts");     // Create frame
    JTable table = new JTable();      // Create Table
    FileWriter read; // Ceate new fileWriter
    JButton Create;  
    JButton Quit;     // Create new buttons
    JButton Delete;
    JButton Save;
    JButton Import;
    JButton Help;
    JLabel name1 = new JLabel("Last Name");  
    JLabel name2= new JLabel ("First Name"); 
    JLabel phone= new JLabel ("Phone Number");    // Create Labels
    JLabel address= new JLabel ("Address");
    JLabel pcode= new JLabel ("Postal Code");
    JLabel eaddress= new JLabel ("Email Address");
    JLabel note= new JLabel ("Note");
    JTextField lastName = new JTextField();
    JTextField firstName= new JTextField();
    JTextField phoneNumber= new JTextField();
    JTextField addressLocation= new JTextField(); // Create Text Fields
    JTextField postalCode= new JTextField();
    JTextField emailAddress= new JTextField();
    JTextField noteMemo= new JTextField();
{
    Create=new JButton("Create Contact"); 
    Quit= new JButton ("Quit");    // set name of buttons
    Delete= new JButton ("Delete a Contact");
    Save= new JButton ("Save Contacts");
    Import= new JButton ("Import Saved Contacts");
    Help= new JButton ("Instructions");
    Start.setSize(1215,600);       // set size of frame
    Start.setVisible(true);  // make the frame visible 
    Start.setLayout(null);
    Start.setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);  
    Start.getContentPane().add(Create); 
    Start.getContentPane().add(Quit);    // add all buttons to frame
    Start.getContentPane().add(Delete); 
    Start.getContentPane().add(Save);
    Start.getContentPane().add(Import);
    Start.getContentPane().add(Help);
    Start.getContentPane().add(name1);
    Start.getContentPane().add(name2);
    Start.getContentPane().add(phone);
    Start.getContentPane().add(address);    // add all Labels
    Start.getContentPane().add(pcode);
    Start.getContentPane().add(eaddress);
    Start.getContentPane().add(note);
    Start.getContentPane().add(lastName);
    Start.getContentPane().add(firstName);
    Start.getContentPane().add(phoneNumber);
    Start.getContentPane().add(addressLocation);  // add all Text Field
    Start.getContentPane().add(postalCode);
    Start.getContentPane().add(emailAddress);
    Start.getContentPane().add(noteMemo);                         
    Help.setBounds(820,150,200,30);
    Create.setBounds(700,20,200,30);  // set size of buttons
    Delete.setBounds(700,90,200,30);  
    Save.setBounds(950,90,200,30);
    Import.setBounds(950,20,200,30);
    Quit.setBounds(820,200,200,30);
    name1.setBounds(40,11,100,100);  
    name2.setBounds(250,11,100,100);
    phone.setBounds(460,11,100,100);     // set location of all Labels
    address.setBounds(40,75,100,100);
    pcode.setBounds(250,75,100,100);
    eaddress.setBounds(460,75,100,100);
    note.setBounds(160,150,100,100);
    lastName.setBounds(105,50,100,25);
    firstName.setBounds(320,50,100,25); 
    phoneNumber.setBounds(550,50,100,25); 
    addressLocation.setBounds(105,114,100,25);  // set location of all Text Fields 
    postalCode.setBounds(320,114,100,25); 
    emailAddress.setBounds(550,114,100,25); 
    noteMemo.setBounds(200,180,300,50);   
    // Creating The Table
    Object[] columns = {"Last Name","First Name","Phone Number","Address","Postal Code","Email Address","Note"};
    DefaultTableModel model = new DefaultTableModel();
    model.setColumnIdentifiers(columns);                       // making the table 
    table.setModel(model);
    table.setBackground(Color.LIGHT_GRAY);
    table.setForeground(Color.black);
    Font font = new Font("",4,12);          // setting the table up
    table.setFont(font);
    table.setRowHeight(30);
    JScrollPane pane = new JScrollPane(table);
    pane.setBounds(0, 275, 1200, 700);            // setting size and location of table
    Start.setLayout(null);                   // adding table to frame
    Start.add(pane);
    Object[] row = new Object[7];
    // Setting the functions of all buttons 
    Quit.addActionListener(new ActionListener(){
      @Override                                       // setting the quit buttons function
      public void actionPerformed(ActionEvent e) {
        System.exit(0);     // When Quit is clicked close frame
        }
     }); 
     Help.addActionListener(new ActionListener(){
      @Override                                       // setting the Help buttons function
      public void actionPerformed(ActionEvent e) {
      JOptionPane.showMessageDialog(null, "Type the credentials in the fields, make sure to add '/' at end of every field. after typing, click create, make sure everytime create a contact to save it. once saved delete contact and then save another contact.","Instructions", JOptionPane.INFORMATION_MESSAGE); 
                 // When Help is clicked open pop up box with instructions 
        }
     }); 
    Delete.addActionListener(new ActionListener(){
      @Override
      public void actionPerformed(ActionEvent e) {
        int i = table.getSelectedRow();            // setting the delete buttons function
           if(i >= 0){
                  model.removeRow(i);            // delete the selected row
                  }
           else{
                  System.out.println("Please select a Contact");   // If no row is selected than nothing will be deleted
                  }
            }
        });
     Create.addActionListener(new ActionListener(){
      @Override                                      // setting the create buttons function
      public void actionPerformed(ActionEvent e) { 
        row[0] = lastName.getText();
        row[1] = firstName.getText();
        row[2] = phoneNumber.getText();           // when create is presses get
        row[3] = addressLocation.getText();       // the data from the textfields 
        row[4] = postalCode.getText();
        row[5] = emailAddress.getText();
        row[6] = noteMemo.getText();
                 model.addRow(row);
           }
        });
    Save.addActionListener(new ActionListener(){
      @Override                                   // setting the Save button function 
      public void actionPerformed(ActionEvent e){
       try{
         File file = new File("records.txt");
                                                      // if the file records.txt does not exist
                                                      // then the program will create one itself
               if(!file.exists()){
                   file.createNewFile();
               }
               FileWriter read = new FileWriter("records.txt", true);  // create new FileWriter
               BufferedWriter write1 = new BufferedWriter(read);          // create new BufferedWriter
               for(int i = 0; i < table.getRowCount(); i++){            // get the amount of rows in JTable
                   for(int j = 0; j < table.getColumnCount(); j++){
                       write1.write(table.getModel().getValueAt(i, j)+" ");  // write all data from table in records.txt
                   }
                   write1.write("\r\n");    // add space between every contact
               }
               write1.close();  
               read.close();
               JOptionPane.showMessageDialog(null, "All Contacts Saved");   // when contacts successfully transferred show pop up box
               }catch(Exception ex){
                   ex.printStackTrace();
               }
           }
        });
    Import.addActionListener(new ActionListener(){
      @Override                                   // setting the Import button function 
      public void actionPerformed(ActionEvent e){
       try {
            BufferedReader write2 = new BufferedReader(new FileReader("records.txt"));   // find the file records.txt
            Object[] tableLines = write2.lines().toArray(); 
            for(int i = 0; i < tableLines.length; i++)    // add contacts to JTable
            {
                String line = tableLines[i].toString().trim();
                String[] dataRow = line.split("/");     // every space means new column
                model.addRow(dataRow);
            }
        } catch (Exception ex) {
        }
    } 
        });
   }
  }
 }
 
     
     
     
    