Показать сообщение отдельно
Старый 12.09.2007, 00:27   #8
Frank
Нуждающийся
 
Аватар для Frank
 
Регистрация: 22.07.2006
Сообщений: 50
Написано 6 полезных сообщений
(для 19 пользователей)
Re: Как использовать ярлыки в MP?

Должно быть что-то вроде этого:
program NewProject;

Procedure SubMenu1;
var cmdOK, cmdBack, click: command;
		mnuSubMenu1, mnuSubMenu2: integer;
begin
	repeat
		showMenu('Под меню 1',CH_IMPLICIT);
		mnuSubMenu1:=MenuAppendString('Под-под меню 1');
		mnuSubMenu2:=MenuAppendString('Под-под меню 2');
	
		cmdOK:=CreateCommand('Выбор',CM_OK,1); AddCommand(cmdOK);
		cmdBack:=CreateCommand('Назад',CM_Back,1); AddCommand(cmdBack);
		repaint;
	
		repeat
			click:=GetClickedCommand;
		until click<>EmptyCommand;
		RemoveCommand(cmdOK); RemoveCommand(cmdBack);
		
		if click=cmdOK then begin
			// if MenuGetSelectedIndex=mnuSubMenu1 then .......
			// if MenuGetSelectedIndex=mnuMenu2 then .........
		end;
	until click=cmdBack;
end;


Procedure Menu1;
var cmdOK, cmdBack, click: command;
		mnuSubMenu1, mnuSubMenu2: integer;
begin
	repeat
		showMenu('Меню 1',CH_IMPLICIT);
		mnuSubMenu1:=MenuAppendString('Под меню 1');
		mnuSubMenu2:=MenuAppendString('Под меню 2');
	
		cmdOK:=CreateCommand('Выбор',CM_OK,1); AddCommand(cmdOK);
		cmdBack:=CreateCommand('Назад',CM_Back,1); AddCommand(cmdBack);
		repaint;
	
		repeat
			click:=GetClickedCommand;
		until click<>EmptyCommand;
		RemoveCommand(cmdOK); RemoveCommand(cmdBack);
		
		if click=cmdOK then begin
			if MenuGetSelectedIndex=mnuSubMenu1 then SubMenu1;
			// if MenuGetSelectedIndex=mnuSubMenu2 then SubMenu2;
		end;
	until click=cmdBack;
end;

Procedure MainMenu;
var cmdOK: command;
	mnuMenu1, mnuMenu2, mnuExit: integer;
begin
	repeat
		showMenu('Главное меню',CH_IMPLICIT);
		mnuMenu1:=MenuAppendString('Меню 1');
		mnuMenu2:=MenuAppendString('Меню 2');
		mnuExit :=MenuAppendString('Выход');
	
		cmdOK:=CreateCommand('Выбор',CM_OK,1); AddCommand(cmdOK);
		repaint;
	
		repeat
		until GetClickedCommand<>EmptyCommand;
		RemoveCommand(cmdOK);
	
		if MenuGetSelectedIndex=mnuMenu1 then Menu1;
		// if MenuGetSelectedIndex=mnuMenu2 then Menu2;
		// и т.д...
		
	until MenuGetSelectedIndex=mnuExit;
end;

begin
		MainMenu;
end.
(Offline)
 
Ответить с цитированием