# Dynamic Menu AS2 (Flash 8 & above)

**URL:** <https://forum.kirupa.com/t/dynamic-menu-as2-flash-8-above/292847>\
**Category:** flash\
**Created:** [July 20, 2009, 1:34pm UTC](https://forum.kirupa.com/t/dynamic-menu-as2-flash-8-above/292847 "2009-07-20T13:34:04Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![nas007](https://avatars.discourse-cdn.com/v4/letter/n/edb3f5/32.png) [@nas007](https://forum.kirupa.com/u/nas007)\
**Post date:** [July 20, 2009, 1:34pm UTC](https://forum.kirupa.com/t/dynamic-menu-as2-flash-8-above/292847/1 "2009-07-20T13:34:04Z")

</div>

Hi.

I’m trying to build a completely dynamic menu (with submenus) using all code (no frame labels, timeline etc). I’m kinda stuck and am not 100% sure how to get to the next step (making the main menu buttons move to allow the submenu to appear in between the appropriate spot). I think it’s just easier for you to take a look at the code to see where I’m at. Here it is:

var ChapterTitles\_arr:Array = new Array();  
ChapterTitles\_arr[0] = “Chapter0”;  
ChapterTitles\_arr[1] = “Chapter1”;  
ChapterTitles\_arr[2] = “Chapter2”;  
ChapterTitles\_arr[3] = “Chapter3”;  
ChapterTitles\_arr[4] = “Chapter4”;  
ChapterTitles\_arr[5] = “Chapter5”;  
ChapterTitles\_arr[6] = “Chapter6”;

var SubMenus\_0\_arr:Array = new Array();  
SubMenus\_0\_arr[0] = “Chapter0 Sub Menu1”;  
SubMenus\_0\_arr[1] = “Chapter0 Sub Menu2”;  
SubMenus\_0\_arr[2] = “Chapter0 Sub Menu3”;

var SubMenus\_1\_arr:Array = new Array();  
SubMenus\_1\_arr[0] = “Chapter1 Sub Menu1”;  
SubMenus\_1\_arr[1] = “Chapter1 Sub Menu2”;  
SubMenus\_1\_arr[2] = “Chapter1 Sub Menu3”;  
SubMenus\_1\_arr[3] = “Chapter1 Sub Menu4”;  
SubMenus\_1\_arr[4] = “Chapter1 Sub Menu5”;  
SubMenus\_1\_arr[5] = “Chapter1 Sub Menu6”;

var SubMenus\_2\_arr:Array = new Array();  
SubMenus\_2\_arr[0] = “Chapter2 Sub Menu1”;  
SubMenus\_2\_arr[1] = “Chapter2 Sub Menu2”;  
SubMenus\_2\_arr[2] = “Chapter2 Sub Menu3”;  
SubMenus\_2\_arr[3] = “Chapter2 Sub Menu4”;  
SubMenus\_2\_arr[4] = “Chapter2 Sub Menu5”;

var SubMenus\_3\_arr:Array = new Array();  
SubMenus\_3\_arr[0] = “Chapter3 Sub Menu1”;  
SubMenus\_3\_arr[1] = “Chapter3 Sub Menu2”;

var SubMenus\_4\_arr:Array = new Array();  
SubMenus\_4\_arr[0] = “Chapter4 Sub Menu1”;  
SubMenus\_4\_arr[1] = “Chapter4 Sub Menu2”;  
SubMenus\_4\_arr[2] = “Chapter4 Sub Menu3”;  
SubMenus\_4\_arr[3] = “Chapter4 Sub Menu4”;  
SubMenus\_4\_arr[4] = “Chapter4 Sub Menu5”;  
SubMenus\_4\_arr[5] = “Chapter4 Sub Menu6”;

var SubMenus\_5\_arr:Array = new Array();  
SubMenus\_5\_arr[0] = “Chapter5 Sub Menu1”;  
SubMenus\_5\_arr[1] = “Chapter5 Sub Menu2”;  
SubMenus\_5\_arr[2] = “Chapter5 Sub Menu3”;

var SubMenus\_6\_arr:Array = new Array();  
SubMenus\_6\_arr[0] = “Chapter6 Sub Menu1”;  
SubMenus\_6\_arr[1] = “Chapter6 Sub Menu2”;  
SubMenus\_6\_arr[2] = “Chapter6 Sub Menu3”;

createMainMenu = function () {

```
distance_var = 0;

for (i=0; i&lt;ChapterTitles_arr.length; i++) {
	
	ref = empty_mc.attachMovie("mainMenu_btn_mc", "mainMenuButton"+i, 1+i);
	ref.textField_tf.text = ChapterTitles_arr*;
	
	mcHeight = ref._height;
	ref._y = distance_var;
	distance_var += mcHeight;
	
	ref.chapter_id = i;
	
	ref.onRelease = function() {
		
		distanceA_var = this._y + empty_mc.mainMenuButton0._height;
		
		this._parent._parent.empty_mc.createEmptyMovieClip("subMenuContainer_mc",25);
		empty_mc.subMenuContainer_mc._x = 65;
		
		for (j=0; j&lt;this._parent._parent["SubMenus_"+this.chapter_id+"_arr"].length; j++) {
			var SubMenu = this._parent._parent.empty_mc.subMenuContainer_mc.attachMovie("subMenu_btn_mc", "newSubMenuBut"+j, 30+j);
			
	SubMenu.textFieldSub_tf.text = this._parent._parent["SubMenus_"+this.chapter_id+"_arr"][j];
			
			mcHeightA = SubMenu._height +1;
			
			SubMenu._y = distanceA_var;
			distanceA_var += mcHeightA				
			
		}
		
	};
	
}

```

};

createMainMenu();

// inside the .fla file I have one empty movie clip on the stage (empty\_mc) and two buttons //in the library with linkage (mainMenu\_btn\_mc) & (subMenu\_btn\_mc)
