JScrollPane will not work no matter what Panel or Container I assign it to

51 views Asked by At

So I've been trying to get a JScrollPane to work on my page but it just wont! I have a table that goes beyond the bounds set and Im trying to set it up so I can scroll down and view everything.

I have tried adding the JScrollPane to all the containers and panels but it wont budge :+| - I dont see why it wont just work if I assign it to mainCon (this.getContentPane()) because if it did work that way It would just make the whole window scrollable!

As you'll see I haven't done any Fancy layouts or anything Im just trying to get the functionality working which it is! But I need to get the JScrollPane working before I can try style all my GUIS!

Here is my code:

public class searchAll extends JFrame implements ActionListener {
    private MemTableModel memberTableModel;
    private int selectedRow;

    //JOptionPane
    //Confirm Dialog
    private int dialogButton = JOptionPane.YES_NO_OPTION;


    //GUI RELATED
    private JTable table = new JTable();

    //JButtons
    private JButton btnDelete = new JButton("Delete");
    private JButton btnEdit = new JButton("Edit");
    private JButton saveMember = new JButton("Save member");
    private JButton btnBack = new JButton("Back");

    //Containers, panels
    Container mainCon = this.getContentPane();
    JPanel formPanel = new JPanel();

    //Adding scroll pane here - to formPanel which holds everything.
    JScrollPane scrollPane = new JScrollPane(formPanel, ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);


    /*TEXT FIELDS BOXES *******************************/
    private JLabel lblName = new JLabel("Name: ");
    private JTextField txtName = new JTextField("", 15);

    private JLabel lblEmail = new JLabel("Email: ");
    private JTextField txtEmail = new JTextField("", 15);

    private JLabel lblDescription = new JLabel("Description about you: ");
    private JTextArea txtDescription = new JTextArea("", 5, 15);
    /*TEXT FIELDS BOXES *******************************/

    /*COMBO BOXES *******************************/
    private JLabel lblCountry = new JLabel();
    private JComboBox comCountry = new JComboBox();

    private JLabel lblGenre = new JLabel();
    private JComboBox comGenre = new JComboBox();
    /*COMBO BOXES *******************************/

    /*RADIO BUTTONS *******************************/
    private JLabel lblMaleFemale = new JLabel("Gender: ");
    private JRadioButton radMale = new JRadioButton("Male: ");
    private JRadioButton radFemale = new JRadioButton("Female: ");
    private ButtonGroup buttonGroupMF = new ButtonGroup();

    private JLabel lblFreePaid = new JLabel("Membership Type: ");
    private JRadioButton radFree = new JRadioButton("Free: ");
    private JRadioButton radPaid = new JRadioButton("Paid: ");
    private ButtonGroup buttonGroupFP = new ButtonGroup();
    /*RADIO BUTTONS *******************************/

    /*PAID MEMBER STUFF *******************************/
    private JLabel lblCardNo = new JLabel("Card Number: ");
    private JTextField txtCardNo = new JTextField("", 15);

    private JLabel lblExpiry = new JLabel();
    private JComboBox comExpiry = new JComboBox();
    /*PAID MEMBER STUFF *******************************/

    //DB SQL Variables - 
    private String edName = "";
    private String edEmail = "";
    private String edDescription = "";
    private String edCountry = "";
    private String edGenre = "";
    private String edGender = "";
    private String edMembType = "";
    private String edCardNo = "";
    private Object edExpiry = "";
    private String edSongLim = "";

    //DB 
    private Connection conDB = null;
    private Statement stmt = null;
    private ResultSet r = null;

    //Validation isValid
    private boolean isValid;

    public searchAll(){
        super("Search/Edit/Delete");
        this.setBounds(400, 500, 854,400);
//        this.setPreferredSize(new Dimension(500,500));
        this.setVisible(true);
        memberTableModel = new MemTableModel();

        //Add table and GUI components
        mainCon.add(BorderLayout.NORTH, btnBack);
        btnBack.addActionListener(this);
        mainCon.add(scrollPane);
        mainCon.add(formPanel);
        formPanel.setPreferredSize(new Dimension(500,500));


        formPanel.add(table);
        formPanel.add(btnDelete);
        formPanel.add(btnEdit);
        //Tried doing this - But didn't work. Just stayed static
//        formPanel.add(scrollPane);

        //Add action listeners

        btnEdit.addActionListener(this);
        btnDelete.addActionListener(this);
        table.setModel(memberTableModel);

        //Set Selection model for table
        table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);

        ListSelectionModel rowSM = table.getSelectionModel();
        rowSM.addListSelectionListener(new ListSelectionListener()  {
            @Override
            public void valueChanged(ListSelectionEvent e){
                ListSelectionModel lsm = (ListSelectionModel) e.getSource();
                selectedRow = lsm.getMinSelectionIndex();
                System.out.println(selectedRow);
            }
        });

    }


    //Connection Method
    public Connection getConnection(){
        Connection conDB = null;
         /****** DEFAULT MYSQL DRIVERS **************************/
            String url = connection.geturl();
            String username = connection.getUsername();
            String password = connection.getPassword();
        try{
            //load the MYSQL driver
            Class.forName(connection.getDriver());
            conDB = DriverManager.getConnection(url, username, password);
        }
        catch(Exception e){
            System.out.println("Error was: " + e);
        }
         return conDB;
    }

    /*-------ACTION PERFORMED ------------------------------*/
    int editCounter = 0;
    public void actionPerformed(ActionEvent e) {
        if(e.getSource() == btnBack){
            this.dispose();
        }

                            //DELETE BUTTON BELOW
/*########################################################################*/

        if(e.getSource() == btnDelete){

            System.out.println("Ran btnDelete");
            deleteMember();

        }
/*########################################################################*/

                        //EDIT BUTTON BELOW

/*########################################################################*/

        if(e.getSource() == btnEdit){
            if(editCounter == 0)
            {
                System.out.println("Ran btnEdit");
                editFunction();
                editCounter++;
            }
             else{
                formPanel.repaint();
                System.out.println("Stop duplicating form inputs");
            }

        }
/*########################################################################*/

                        //SAVE MEMBER BUTTON BELOW

/*########################################################################*/
        if(e.getSource() == saveMember){
            System.out.println("Ran btnSaveMember");
             //UPDATE VALUES
                if(radMale.isSelected()){
                    edGender = "Male";
                }
                else if(radFemale.isSelected()){
                    edGender = "Female";
                }
                if(radPaid.isSelected()){
                    edMembType = "Paid";
                    edSongLim = "100";
                    edCardNo = txtCardNo.getText();
                    edExpiry = comExpiry.getSelectedItem();
                    txtCardNo.setEnabled(true);

                }
                else{
                    edMembType = "Free";
                    edSongLim = "10";
                    edCardNo = "";
                    edExpiry = "";
                    txtCardNo.setEnabled(false);

                }
           //Validate the form
           if(txtName.getText().equals(""))
           {
               isValid = false;
               JOptionPane.showMessageDialog(null, "Enter a name please");
           }
           else{
               isValid = true;
                if(txtEmail.getText().equals("")){
                  isValid = false; 
                  JOptionPane.showMessageDialog(null, "Enter an Email please");
               }
               else
               {
                   isValid = true;
                    if(txtDescription.getText().equals("")){
                      isValid = false; 
                      JOptionPane.showMessageDialog(null, "Enter a Description please");
                   }
                   else
                   {
                       isValid = true;
                       if(radPaid.isSelected()){
                           if(txtCardNo.getText().equals("")){
                               isValid = false; 
                                JOptionPane.showMessageDialog(null, "Enter a Card Number please");
                           }
                           else{
                               isValid = true;
                           }
                       }

                   }
               }
           }
           //If the form is good, execute the update
           if(isValid){
            saveMember();
           }
        }//End of saveMember Button
}//End of action performed
 /*########################################################################*/      

                           //DELETE MEMBER BELOW

/*#######################DELETE MEMBER####################################*/
    public void deleteMember(){
        member m  =  memberTableModel.getRow(selectedRow);       
        System.out.println("in BTN delete");
            try{
            //Connection + Statement
            conDB = getConnection();
            stmt = conDB.createStatement();
            String sqlDeleteMem = "delete from members where membId = " + m.getmembId();

            //Confirm Dialog - If they click yes dialogResult will = 0
            int dialogResult = 
    JOptionPane.showConfirmDialog(this, "Are you sure you want to delete " + m.getname()
            , "Delete Confirmation", dialogButton);
            String sqlDeletePlay = "delete from playlist where membId = " + m.getmembId();
             if(dialogResult == 0){
                stmt.executeUpdate(sqlDeleteMem);
                //Delete the playlists associated with the member.
                stmt.executeUpdate(sqlDeletePlay);
                System.out.println(m.getname() + " Deleted");
             }
             else{
                 JOptionPane.showMessageDialog(null, m.getname() + " was not deleted");
             }

            //Close the DB connection
//            stmt.close();
//            conDB.close();


            }
            catch(SQLException er){
                System.out.println("Error was: " + er);
            }
            memberTableModel.LoadTableFromDB();
            memberTableModel.fireTableRowsDeleted(selectedRow, selectedRow);
    }

/*#########################################################################*/

                        //SAVE MEMBER BELOW

/*#######################SAVE MEMBER####################################*/
    public void saveMember(){
        member m  =  memberTableModel.getRow(selectedRow);       
         System.out.println("Save member 1");

            try{
             //CHANGE THE VALUES SO WHEN CLICKS SAVE MEM

                /*-------------------------------------*/   


            //Connection + Statement
            conDB = getConnection();
            stmt = conDB.createStatement();

            //Update Query
            String sqlUpdateMem = "UPDATE members SET name = '" + txtName.getText() + "', " + 
            "email = '" + txtEmail.getText() + "', "
            + "country = '" + comCountry.getSelectedItem() + "', "
            + "favGenre = '" + comGenre.getSelectedItem() + "', "
            + "gender = '" + edGender + "', "
            + "description = '" + txtDescription.getText() + "', "
            + "memberType = '" + edMembType + "', "
            + "songLimit = '" + edSongLim + "', "
            + "card_no = '" +  edCardNo + "', "
            + "expiry_date = '" + edExpiry + "' WHERE membId = '"
                    + m.getmembId() + "'";
            System.out.println(sqlUpdateMem);


            System.out.println("Save member 2");

            stmt.executeUpdate(sqlUpdateMem);
            editCounter = 0;

            System.out.println("Updated Member");
            //Close the DB connection
            conDB.close();
            }
            catch(SQLException er){
                System.out.println("Error was: " + er);
            }
    }
/*###########################################################################*/

                        //ADD INPUT FIELDS BELOW

 /*#######################INPUT FIELDS####################################*/   
    public void showInputFields(){
        formPanel.setLayout(new FlowLayout());

         /*TEXT FIELDS BOXES *******************************/
        formPanel.add(lblName);
        formPanel.add(txtName);

        formPanel.add(lblEmail);
        formPanel.add(txtEmail);

        formPanel.add(lblDescription);
        formPanel.add(txtDescription);
        /*TEXT FIELDS BOXES *******************************/



        /*COMBO BOXES *******************************/

        //Combo Box ( Countrys )
        formPanel.add(lblCountry);
        formPanel.add(comCountry);
        comCountry.addItem("Australia");
        comCountry.addItem("New Zealand");
        comCountry.addItem("Tasmania");
        comCountry.addActionListener(this);
        //Combo Box ( Fav Genre )
        formPanel.add(lblGenre);
        formPanel.add(comGenre);
        comGenre.addItem("Pop");
        comGenre.addItem("Rock");
        comGenre.addItem("Alternative");
        comGenre.addItem("Jazz");
        comGenre.addItem("Hip/Hop");

        comGenre.addActionListener(this);

        /*COMBO BOXES *******************************/


        /*RADIO BUTTONS BOXES *******************************/
        //Radio Buttons (Male/Female)
        buttonGroupMF.add(radMale);
        buttonGroupMF.add(radFemale);

        formPanel.add(radMale);
        formPanel.add(radFemale);

        radMale.addActionListener(this);
        radFemale.addActionListener(this);

        //Free or paid members ------ 
        buttonGroupFP.add(radFree);
        buttonGroupFP.add(radPaid);

        formPanel.add(radFree);
        formPanel.add(radPaid);

        radFree.addActionListener(this);
        radPaid.addActionListener(this);
        //Free or paid members ------ 
        /*RADIO BUTTONS BOXES *******************************/


        /*PAID MEMBER GUI *******************************/


        formPanel.add(lblCardNo);
        formPanel.add(txtCardNo);
        //Hide
        lblCardNo.setVisible(true);
        txtCardNo.setVisible(true);


        formPanel.add(lblExpiry);
        formPanel.add(comExpiry);
        comExpiry.addItem("2017");
        comExpiry.addItem("2018");
        comExpiry.addItem("2019");

        //Hide
        lblExpiry.setVisible(true);
        comExpiry.setVisible(true);
        comExpiry.addActionListener(this);

        /*PAID MEMBER GUI *******************************/

        //Add the button after everything
        formPanel.add(saveMember);
        saveMember.addActionListener(this);
    }
/*###########################################################################*/

                        //EDIT MEMBER BELOW

 /*#######################EDIT MEMBER####################################*/
    public void editFunction(){

            member m  =  memberTableModel.getRow(selectedRow);       
            System.out.println("in BTN edit 1");
            //Add boolean value here - Can submit
            showInputFields();
            try{
                System.out.println(" hihi" +  m.getmembId());
            //Connection + Statement
            conDB = getConnection();
            stmt = conDB.createStatement();
            System.out.println(" hihi" +  m.getmembId());
            System.out.println("in BTN edit 2");
            String sqlEdit = "select * from members where membId = " + m.getmembId();

            r = stmt.executeQuery(sqlEdit);
            System.out.println("in BTN edit 3");
            if(r.next()){
                System.out.println("in BTN edit 4");
                //Set text for each TextField - Also assign the values to variables
                //The variables are used in the SQL UPDATE Query.
                //SET THE VALUES FOR THE INPUT FIELDS FROM DB ----------
                txtName.setText(r.getString("name"));
                txtEmail.setText(r.getString("email"));
                txtDescription.setText(r.getString("description"));
                comCountry.setSelectedItem(r.getString("country"));
                comGenre.setSelectedItem(r.getString("favGenre"));
                txtCardNo.setText(r.getString("card_no"));
                comExpiry.setSelectedItem(r.getString("expiry_date"));
                if(r.getString("memberType").equals("Paid")){
                    radPaid.setSelected(true);
                }
                else{
                    radFree.setSelected(true);
                }
                if(r.getString("gender").equals("Male")){
                    radMale.setSelected(true);
//                    edGender = "Male";
                }
                else{
                    radFemale.setSelected(true);
//                    edGender = "Female";
                }
                //---------------------------------------------------------
                System.out.println("in BTN edit 5");
            }            
        }
            catch(SQLException er){
                System.out.println("Error was: " + er);
            }
            memberTableModel.LoadTableFromDB();
            System.out.println("in BTN edit 6");
            System.out.println("in BTN edit 7");
    }
/*##########################################################################*/


}
1

There are 1 answers

5
Michael Laffargue On BEST ANSWER
JPanel formPanel = new JPanel();

//Adding scroll pane here - to formPanel which holds everything.
JScrollPane scrollPane = new JScrollPane(formPanel, ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);

...

mainCon.add(scrollPane);
mainCon.add(formPanel);

You should not reaffect formPanel in the code (It'll lose its already assigned parent), just add scrollPane that already contains your formPanel


import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.BufferedReader;
import java.io.DataInputStream;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.ListSelectionModel;
import javax.swing.ScrollPaneConstants;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
import javax.swing.table.DefaultTableModel;
public class Test2 {

    public static void main(String args[]) throws Exception {
        new SearchAll().setVisible(true);

    }

    public static class SearchAll extends JFrame implements ActionListener {
        private int selectedRow;

        //JOptionPane
        //Confirm Dialog
        private int dialogButton = JOptionPane.YES_NO_OPTION;


        //GUI RELATED
        private JTable table = new JTable();

        //JButtons
        private JButton btnDelete = new JButton("Delete");
        private JButton btnEdit = new JButton("Edit");
        private JButton saveMember = new JButton("Save member");
        private JButton btnBack = new JButton("Back");

        //Containers, panels
        Container mainCon = this.getContentPane();
        JPanel formPanel = new JPanel();

        //Adding scroll pane here - to formPanel which holds everything.
        JScrollPane scrollPane = new JScrollPane(formPanel, ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);


        /*TEXT FIELDS BOXES *******************************/
        private JLabel lblName = new JLabel("Name: ");
        private JTextField txtName = new JTextField("", 15);

        private JLabel lblEmail = new JLabel("Email: ");
        private JTextField txtEmail = new JTextField("", 15);

        private JLabel lblDescription = new JLabel("Description about you: ");
        private JTextArea txtDescription = new JTextArea("", 5, 15);
        /*TEXT FIELDS BOXES *******************************/

        /*COMBO BOXES *******************************/
        private JLabel lblCountry = new JLabel();
        private JComboBox comCountry = new JComboBox();

        private JLabel lblGenre = new JLabel();
        private JComboBox comGenre = new JComboBox();
        /*COMBO BOXES *******************************/

        /*RADIO BUTTONS *******************************/
        private JLabel lblMaleFemale = new JLabel("Gender: ");
        private JRadioButton radMale = new JRadioButton("Male: ");
        private JRadioButton radFemale = new JRadioButton("Female: ");
        private ButtonGroup buttonGroupMF = new ButtonGroup();

        private JLabel lblFreePaid = new JLabel("Membership Type: ");
        private JRadioButton radFree = new JRadioButton("Free: ");
        private JRadioButton radPaid = new JRadioButton("Paid: ");
        private ButtonGroup buttonGroupFP = new ButtonGroup();
        /*RADIO BUTTONS *******************************/

        /*PAID MEMBER STUFF *******************************/
        private JLabel lblCardNo = new JLabel("Card Number: ");
        private JTextField txtCardNo = new JTextField("", 15);

        private JLabel lblExpiry = new JLabel();
        private JComboBox comExpiry = new JComboBox();
        /*PAID MEMBER STUFF *******************************/

        //DB SQL Variables - 
        private String edName = "";
        private String edEmail = "";
        private String edDescription = "";
        private String edCountry = "";
        private String edGenre = "";
        private String edGender = "";
        private String edMembType = "";
        private String edCardNo = "";
        private Object edExpiry = "";
        private String edSongLim = "";

        //DB 
        private Connection conDB = null;
        private Statement stmt = null;
        private ResultSet r = null;

        //Validation isValid
        private boolean isValid;

        public SearchAll(){
            super("Search/Edit/Delete");
            this.setBounds(400, 500, 854,400);
//            this.setPreferredSize(new Dimension(500,500));
            this.setVisible(true);

            //Add table and GUI components
            mainCon.add(BorderLayout.NORTH, btnBack);
            btnBack.addActionListener(this);
            mainCon.add(scrollPane);


            formPanel.add(table);
            formPanel.add(btnDelete);
            formPanel.add(btnEdit);
            //Tried doing this - But didn't work. Just stayed static
//            formPanel.add(scrollPane);

            //Add action listeners

            btnEdit.addActionListener(this);
            btnDelete.addActionListener(this);

            //Set Selection model for table
            table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
            table.setModel(new DefaultTableModel(100, 8));

            ListSelectionModel rowSM = table.getSelectionModel();
            rowSM.addListSelectionListener(new ListSelectionListener()  {
                @Override
                public void valueChanged(ListSelectionEvent e){
                    ListSelectionModel lsm = (ListSelectionModel) e.getSource();
                    selectedRow = lsm.getMinSelectionIndex();
                    System.out.println(selectedRow);
                }
            });

        }


        /*-------ACTION PERFORMED ------------------------------*/
        int editCounter = 0;
        public void actionPerformed(ActionEvent e) {
            if(e.getSource() == btnBack){
                this.dispose();
            }

                                //DELETE BUTTON BELOW
    /*########################################################################*/

            if(e.getSource() == btnDelete){

                System.out.println("Ran btnDelete");
            }
    /*########################################################################*/

                            //EDIT BUTTON BELOW

    /*########################################################################*/

            if(e.getSource() == btnEdit){
                if(editCounter == 0)
                {
                    System.out.println("Ran btnEdit");
                    editCounter++;
                }
                 else{
                    formPanel.repaint();
                    System.out.println("Stop duplicating form inputs");
                }

            }
    /*########################################################################*/

                            //SAVE MEMBER BUTTON BELOW

    /*########################################################################*/
            if(e.getSource() == saveMember){
                System.out.println("Ran btnSaveMember");
                 //UPDATE VALUES
                    if(radMale.isSelected()){
                        edGender = "Male";
                    }
                    else if(radFemale.isSelected()){
                        edGender = "Female";
                    }
                    if(radPaid.isSelected()){
                        edMembType = "Paid";
                        edSongLim = "100";
                        edCardNo = txtCardNo.getText();
                        edExpiry = comExpiry.getSelectedItem();
                        txtCardNo.setEnabled(true);

                    }
                    else{
                        edMembType = "Free";
                        edSongLim = "10";
                        edCardNo = "";
                        edExpiry = "";
                        txtCardNo.setEnabled(false);

                    }
               //Validate the form
               if(txtName.getText().equals(""))
               {
                   isValid = false;
                   JOptionPane.showMessageDialog(null, "Enter a name please");
               }
               else{
                   isValid = true;
                    if(txtEmail.getText().equals("")){
                      isValid = false; 
                      JOptionPane.showMessageDialog(null, "Enter an Email please");
                   }
                   else
                   {
                       isValid = true;
                        if(txtDescription.getText().equals("")){
                          isValid = false; 
                          JOptionPane.showMessageDialog(null, "Enter a Description please");
                       }
                       else
                       {
                           isValid = true;
                           if(radPaid.isSelected()){
                               if(txtCardNo.getText().equals("")){
                                   isValid = false; 
                                    JOptionPane.showMessageDialog(null, "Enter a Card Number please");
                               }
                               else{
                                   isValid = true;
                               }
                           }

                       }
                   }
               }
               //If the form is good, execute the update
               if(isValid){
               }
            }//End of saveMember Button
    }//End of action performed
     /*########################################################################*/      

                               //DELETE MEMBER BELOW

    /*#######################DELETE MEMBER####################################*/

    /*#########################################################################*/

                            //SAVE MEMBER BELOW

    /*#######################SAVE MEMBER####################################*/
    /*###########################################################################*/

                            //ADD INPUT FIELDS BELOW

     /*#######################INPUT FIELDS####################################*/   
        public void showInputFields(){
            formPanel.setLayout(new FlowLayout());

             /*TEXT FIELDS BOXES *******************************/
            formPanel.add(lblName);
            formPanel.add(txtName);

            formPanel.add(lblEmail);
            formPanel.add(txtEmail);

            formPanel.add(lblDescription);
            formPanel.add(txtDescription);
            /*TEXT FIELDS BOXES *******************************/



            /*COMBO BOXES *******************************/

            //Combo Box ( Countrys )
            formPanel.add(lblCountry);
            formPanel.add(comCountry);
            comCountry.addItem("Australia");
            comCountry.addItem("New Zealand");
            comCountry.addItem("Tasmania");
            comCountry.addActionListener(this);
            //Combo Box ( Fav Genre )
            formPanel.add(lblGenre);
            formPanel.add(comGenre);
            comGenre.addItem("Pop");
            comGenre.addItem("Rock");
            comGenre.addItem("Alternative");
            comGenre.addItem("Jazz");
            comGenre.addItem("Hip/Hop");

            comGenre.addActionListener(this);

            /*COMBO BOXES *******************************/


            /*RADIO BUTTONS BOXES *******************************/
            //Radio Buttons (Male/Female)
            buttonGroupMF.add(radMale);
            buttonGroupMF.add(radFemale);

            formPanel.add(radMale);
            formPanel.add(radFemale);

            radMale.addActionListener(this);
            radFemale.addActionListener(this);

            //Free or paid members ------ 
            buttonGroupFP.add(radFree);
            buttonGroupFP.add(radPaid);

            formPanel.add(radFree);
            formPanel.add(radPaid);

            radFree.addActionListener(this);
            radPaid.addActionListener(this);
            //Free or paid members ------ 
            /*RADIO BUTTONS BOXES *******************************/


            /*PAID MEMBER GUI *******************************/


            formPanel.add(lblCardNo);
            formPanel.add(txtCardNo);
            //Hide
            lblCardNo.setVisible(true);
            txtCardNo.setVisible(true);


            formPanel.add(lblExpiry);
            formPanel.add(comExpiry);
            comExpiry.addItem("2017");
            comExpiry.addItem("2018");
            comExpiry.addItem("2019");

            //Hide
            lblExpiry.setVisible(true);
            comExpiry.setVisible(true);
            comExpiry.addActionListener(this);

            /*PAID MEMBER GUI *******************************/

            //Add the button after everything
            formPanel.add(saveMember);
            saveMember.addActionListener(this);
        }
    /*###########################################################################*/

                            //EDIT MEMBER BELOW

     /*#######################EDIT MEMBER####################################*/
    /*##########################################################################*/


    }
}