Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.12.2011, 03:16   #1
Zzoyberg
Пользователь
 
Регистрация: 07.12.2011
Сообщений: 17
Вопрос Создать меню из 4 пунктов

Нужно написать световое меню, содержащее 4 пункта: ГРУППА, АВТОР, ДАТА и ВЫХОД. Перемещение по пунктам меню нужно организовать клавишами "стрелка вверх" и "стрелка вниз". После выбора пункта меню клавишей Enter вывести в окошке текст этого пункта, в пункте ДАТА вывести системную дату (только день недели). При выборе ВЫХОД завершить программу.
Zzoyberg вне форума Ответить с цитированием
Старый 28.12.2011, 11:54   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

меню в тексте(консоли) или в графике?

и начните с этих тем (там есть примеры):
http://www.programmersforum.ru/showthread.php?t=77178
http://www.programmersforum.ru/showthread.php?t=86898
http://www.programmersforum.ru/showthread.php?t=140716
http://www.programmersforum.ru/showthread.php?t=166694
Serge_Bliznykov вне форума Ответить с цитированием
Старый 28.12.2011, 16:27   #3
Zzoyberg
Пользователь
 
Регистрация: 07.12.2011
Сообщений: 17
Вопрос

В общем как-то так, но не так Тут работа с 3 пунктами, без даты и в окошке отдельном не выводит. Поправьте плз - не понимаю.

Код:
Uses  Crt;
Const n=3;
type
 stroka=string[5]; 
 masmenu=array [1..n] of stroka; 
var
 menu :masmenu;
i,k:integer; kod:char;
procedure ramka(x0,y0,xn,yn:integer); 
Var  i:integer;
begin
 textcolor(14); 
 gotoxy(x0,y0); 
 write(#218); 
 for i:=1 to (xn-x0-1) do write(#196); 
 write(#191); 
 for i:=2 to yn-y0 do 
    begin
       gotoxy(1,i); write(#179); 
       gotoxy(xn-x0+1,i); write(#179);     end;
gotoxy(1,yn-y0+1); 
write(#192); 
for i:=1 to (xn-x0-1) do write(#196); 
write(#217); 
end;
begin
 k:=1; 
 menu[1]:='NAME '; 
 menu[2]:='AVTOR';
 menu[3]:='EXIT ';
while true do 
 begin
  clrscr; 
  textmode(3); 
  ramka(1,1,7,5); 
kod:=' '; 
while kod<>#13 do 
  begin
   for i:=1 to n do 
   begin
    if i=k then 
    begin
     textbackground(1); 
     textcolor(4); 
    end
    else  
    begin
     textbackground(4); 
     textcolor(1); 
    end;
    gotoxy(2,i+1); 
    write(menu[i]); 
end; 
 kod:=readkey; 
   sound(100); 
   delay(5);
   nosound;
   if kod=#0 then 
   begin
    kod:=readkey; 
    if kod=#72 then
    begin
     if k>1 then 
      k:=k-1 
     else
      k:=n  
    end;
    if kod=#80 then  
    begin
     if k<n then 
      k:=k+1   
     else  
      k:=1; 
    end;
   end; 
end; 
if k=n then 
  begin
   window(1,1,80,25); 
   clrscr; 
   halt;
  end
Else  
  begin
   textbackground(15); 
   textcolor(6); 
   window(7,k+1,12,k+1); 
   clrscr; 
   gotoxy(1,1); 
   write(menu[k]); 
readln; 
    end; 
  end; 
end.
Zzoyberg вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
удаление пунктов меню в админке Nostalgia PHP 1 08.12.2011 01:40
Имеются n пунктов производства и m пунктов распреде-ления продукции. Стоимость перевозки единицы продукции с i-го пункта Юленька*** Microsoft Office Excel 1 11.07.2011 17:03
Создать меню и подключить свое меню OgE®_M@G Microsoft Office Excel 9 26.11.2010 07:41
Копирование пунктов меню Altera Общие вопросы Delphi 4 28.07.2009 07:45
Разработать вертикальное меню из нескольких пунктов Тарон Паскаль, Turbo Pascal, PascalABC.NET 1 20.02.2008 18:56