import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class HideShow extends JPanel implements ActionListener {
	private JTextField input;
	private JLabel lbl;
	private JButton b1, b2;
	
	public HideShow() {
		setPreferredSize(new Dimension(300, 50));
		lbl  = new JLabel("label");
		input = new JTextField("text", 5);
		b1 = new JButton("Hide");
		b2 = new JButton("Show");
		b1.addActionListener(this);
		b2.addActionListener(this);
		setLayout(new FlowLayout());
		add(lbl); add(input); add(b1); add(b2);
	}

	public void actionPerformed(ActionEvent e) {
		if (e.getSource() == b1) {
			lbl.setVisible(false); input.setVisible(false); b1.setVisible(false);
		} else if (e.getSource() == b2) {
			lbl.setVisible(true);  input.setVisible(true);  b1.setVisible(true);
		}
	}

	public static void main(String[] args) {
		SwingUtilities.invokeLater(() -> {
			JFrame frame = new JFrame("Hide and Show");
			frame.add(new HideShow());
			frame.pack();
			frame.setVisible(true);
			frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		});
	}
}
