I have a very strange problem with my java application. I basically click the JButton and the new window I want to open opens but with no content showing. Here is what happens.
If I run the class on its own without using a JButton it runs proberly like so.

Here is the code for the button.
public Create()
    {
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setBounds(100, 100, 629, 316);
        contentPane = new JPanel();
        contentPane.setBackground(new Color(255, 255, 204));
        contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
        setContentPane(contentPane);
        contentPane.setLayout(null);
        btnBuildData = new JButton("Build Graph");
        btnBuildData.addActionListener(new ActionListener()
        {
            public void actionPerformed(ActionEvent arg0)
            {
                //CreateTest frame = new CreateTest();
                new CreateTest().setVisible(true);
            }
        });
        btnBuildData.setBackground(Color.WHITE);
        btnBuildData.setForeground(Color.BLACK);
        btnBuildData.setBounds(29, 59, 107, 23);
        contentPane.add(btnBuildData);
This is strange to me because I have used this code for other classes and it works as intended. I have tried many different ways to do the same thing but none of them have worked. Here is some code for the frame I am opening with the button.
public class CreateTest extends JFrame {
    public CreateTest() {
    }
    //Create the connection to Neo4j
    Driver  driver      = GraphDatabase.driver( "bolt://localhost", AuthTokens.basic( "*****", "*******" ) );
    Session session     = driver.session();
    StatementResult resultVariable;
    Record          recordVariable;
    //Create variables to manage communication with Neo4j
    String  resultString = new String();
    Query   neoQuery = new Query();
    private JTextField progressTextField;
    public static void main(String[] args) 
    {
        SwingUtilities.invokeLater(new Runnable() 
        {
            @Override
            public void run() 
            {
                new CreateTest().initUI();
            }
        });
    }
    protected void initUI() 
    {
        final JFrame frame = new JFrame();
        //the form
        frame.setTitle(CreateTest.class.getSimpleName());
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        JButton button = new JButton("Click here to add data");
        button.addActionListener(new ActionListener() 
        {
            @Override
            public void actionPerformed(ActionEvent e) 
            {
                doWork();
            }
        });
        progressTextField = new JTextField(25);
        progressTextField.setEditable(false);
        frame.getContentPane().add(progressTextField, BorderLayout.NORTH);
        frame.getContentPane().add(button, BorderLayout.SOUTH);
        frame.pack();
        frame.setVisible(true);
    }
    protected void doWork() {
        SwingWorker<Void, Integer> worker = new SwingWorker<Void, Integer>() {
            @Override
            protected Void doInBackground() throws Exception {
                CreateTest frame = new CreateTest();
}
            @Override
            protected void process(List<Integer> chunks) {
                progressTextField.setText(chunks.get(chunks.size() - 1).toString());
            }
            @Override
            protected void done() {
                progressTextField.setText("Success: All Nodes have been added ");
            }
        };
        worker.execute();
    }
}
There is a difference between the two windows. One being absolute layout and the other jpanel but I don't think this is the problem. If anyone has any ideas please let me know, any ideas will be appreciated. Thanks.

 
    