CODE:#define WS_CHILD 1073741824
#define WS_VISIBLE 268435456
#define BS_AUTOCHECKBOX 3
#define BM_GETSTATE 242
#define SW_HIDE 0
#define SW_SHOW 5
external(INT, "CreateWindow", "CreateWindowExA", "User32.dll" );
external(INT, "ShowWindow", "ShowWindow", "User32.dll" );
createdialog(0);
showdialog(0, "Диалог",100, 100, 300, 300, 1, 1);
int check[6], state;
loop()sleep(10);
function getmessage(0, WM_COMMAND)
{
for(int i=0; i<3; i++)
{
if(message.lparam==check[i])
{
state=sendmessage(BM_GETSTATE, 0, 0 , formatiw(check[i]));
if(state==1 || state==9)ShowWindow(check[i+3], SW_SHOW);
else ShowWindow(check[i+3], SW_HIDE);
}
}
}
function getmessage(0, WM_CREATE)
{
check[0]=CreateWindow(0, "BUTTON", "Меню1", WS_CHILD | BS_AUTOCHECKBOX | WS_VISIBLE, 20, 10, 70, 20, gethwnd(0), 0, 0, 0);
check[1]=CreateWindow(0, "BUTTON", "Меню2", WS_CHILD | BS_AUTOCHECKBOX | WS_VISIBLE, 20, 50, 70, 20, gethwnd(0), 0, 0, 0);
check[2]=CreateWindow(0, "BUTTON", "Меню3", WS_CHILD | BS_AUTOCHECKBOX | WS_VISIBLE, 20, 90, 70, 20, gethwnd(0), 0, 0, 0);
check[3]=CreateWindow(0, "BUTTON", "Подменю1", WS_CHILD | BS_AUTOCHECKBOX, 30, 30, 90, 20, gethwnd(0), 0, 0, 0);
check[4]=CreateWindow(0, "BUTTON", "Подменю2", WS_CHILD | BS_AUTOCHECKBOX, 30, 70, 90, 20, gethwnd(0), 0, 0, 0);
check[5]=CreateWindow(0, "BUTTON", "Подменю3", WS_CHILD | BS_AUTOCHECKBOX, 30, 110, 90, 20, gethwnd(0), 0, 0, 0);
}