How do I "Switch GUI"?

Hello! I know that I have already posted this question twice before but I felt like I didn’t include enough info for it.

I need a GUI box with buttons included. One that says quit and quits the application, which I can do, but one that says levels. If clicked, it changes the GUI to show more buttons that say level 1, level 2 etc. and then a back button to go back. This would be as a main menu so it’s always there on that scene. Here is a video to show you what I mean, watch it from 0:29 to 0:45:

This wouldn’t be a pause menu, it would be a main menu. and it wouldn’t say video or music, it would say levels and quit. But it would keep the back thing. It’s the same concept, just different GUI Buttons and stuff. IF someone could provide a JS or C# script then I would be grateful. Even a link to a tutorial would be good. Thanks!

To the moderators,
I get that I’ve asked this before, but I hope that this time it is better to understand. Please don’t instantly close it, I’m so desperate at the minute.

If you’re not already doing so, you should have different methods for drawing each separate menu. Call those methods based on the state of a finite-state-machine you build to control which GUI elements are drawn. Change between states using buttons present in each draw method. The basic structure looks like this:

public enum GUIState { mainMenu, differentMenu }
public GUIState state;
void OnGUI() {
  switch(state) {
    case GUIState.mainMenu: DrawMainMenu(); break;
    case GUIState.differentMenu: DrawDifferentMenu(); break;
void DrawMainMenu() {
  // because this method was called from within OnGUI
  // you can call GUI functions here
  // include a button to set state variable to GUIState.differentMenu;
void DrawDifferentMenu() {
  // include a button to set state variable to GUIState.mainMenu;