I've got a
//create panel to hold buttons
JPanel btnPanel = new JPanel();
JButton btnMatrix = new JButton("Matrix View");
JButton btnList = new JButton("List View");
You didn't specify a constraint when you added the buttons to the panel. So both buttons are added to the CENTER. However, only one component can be added to the CENTER, so only the last one added is displayed.
You can try a different layout:
btnPanel.setLayout( new GridLayout(0, 2));
Then each button will be the same size and both buttons will fill the space available.