Может быть одна или много причин для вашей проблемы
1. Ваш JPanel не может быть добавлен в Контейнер. Добавьте его, используя getContentPane (). Add (jpanel1);
2. Ваша JLabel сама не видна. Установите для свойства visible значение true.
3. Ваш JPanel не имеет потока, но CardLayout, и, следовательно, они могут быть видны в задней части другого компонента. Назначьте макет с помощью jpanel1.setLayout (new FlowLayout ())
4. Переместите this.setVisible (true) во внешний цикл.