довно я не писал не чего так что погнали
Этот и последующие элементы будут всегда пренадлежать суб-меню. Поэтому что бы не замарачиваться с начальной координатой положения - допишем еще одну переменную в структуру stMenu:
Код HTML:
struct stMenu
	{
		int x,
			y, _y;
	};
так же "иницализируем ее в Init_PosMenu():
Код HTML:
void  cRender::Init_PosMenu(int x,int y,DWORD KEY,stMenu* pos_Menu,IDirect3DDevice9* m_pD3Ddev)
{
	(*pos_Menu).x = x;
	(*pos_Menu).y = y;
	(*pos_Menu)._y = y;

	if( !pFont)
		pFont->OnLostDevice();
	else
	{

		if(State_Key(KEY,3000))Show=!Show;
		if(Show)SHOW_MENU(m_pD3Ddev);

		pFont->OnLostDevice();
		pFont->OnResetDevice();
	}
}
перейдем непосредственно к рисованию контрола.
Внешний вид его будет такой:


Определяем прототип в классе cRender:
Код HTML:
void  Draw_CheckBox(stMenu *pos_Menu,bool &Var,char *Text,IDirect3DDevice9 *pDevice);
И описываем функцию:
Код HTML:
void cRender::Draw_CheckBox(stMenu *pos_Menu,bool &Var,char *Text,IDirect3DDevice9 *pDevice)
{
	int x = (*pos_Menu).x+115,
		y = (*pos_Menu)._y,
		w = 16,
		h = 16;


	Draw_Box( x,  y, w, h, 0xff305C5F,pDevice);
	Draw_Border( x,  y, w, h,1, line_Color,pDevice);


	if(IsInBox(x,y ,w,h))
	{ 
		if (State_Key(VK_LBUTTON,300) ) 
			           Var=!Var;
	}
	if(Var)
		Draw_GradientBox(x+3, y+3, 11, 11, DarkRed, BLACK,vertical , pDevice );
	

	Draw_Text(x+24,y+2,line_Color, Text,L_Text);

	(*pos_Menu)._y = y+20;
}
Система думаю будет ясна из предыдущего тутора.
Единственное о чем можно сказать, так это о "x = (*pos_Menu).x+115".
(*pos_Menu).x - это начальное положение меню
+115 - это цифра определяет смещение от начала.Складывается она из длинны Draw_Menu_But() + небольшое дополнение, что бы был зазор между основным меню и суб-меню.


Запись у меня в меню получилась следущая:
Код HTML:
Draw_Menu_But(&pos_Menu,"New Button 1", pDevice);
	if(Button_Mass[0])
	{

		Draw_CheckBox(&pos_Menu,b_Fun_1,"New CheckBox 1",pDevice);
		Draw_CheckBox(&pos_Menu,b_Fun_2,"New CheckBox 2",pDevice);
		Draw_CheckBox(&pos_Menu,b_Fun_3,"New CheckBox 3",pDevice);
		Draw_CheckBox(&pos_Menu,b_Fun_4,"New CheckBox 4",pDevice);

	}