Advertisement
CyberPascal

Untitled

May 17th, 2014
248
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 5.17 KB | None | 0 0
  1. Procedure FullStory(data:TData; ns:integer);
  2. var id:integer;
  3.     ch:char;
  4.  
  5. Begin clrscr;
  6. if (ns = 0) then
  7.                 Begin
  8.                 PrintLine;
  9.                 PrintHead(Yellow,32,'ПРОСМОТР ДАННЫХ');
  10.                 PrintHead(LightGreen,6,'Управление: клавиши стрелок вверх/вниз, Esc - выход в основное меню');
  11.                 PrintLine;
  12.                 PrintHead(Red,6,'ОШИБКА #000: Файл базы данных не загружен или отсутствует информация');
  13.                 ReturnMainMenu; {Возврат в главное меню}
  14.                 end
  15.             else
  16.                 Begin
  17.                 id:=1;
  18.                 Repeat clrscr;
  19.                 PrintLine;
  20.                 PrintHead(Yellow,32,'ПРОСМОТР ДАННЫХ');
  21.                 PrintHead(LightGreen,6,'Управление: клавиши стрелок вверх/вниз, Esc - выход в основное меню');
  22.                 PrintLine;
  23.  
  24.                 With Data[id] do
  25.                      Begin
  26.                      TextColor(Cyan); Write(' Номер записи: '); TextColor(Yellow); GotoXY(30,WhereY); Writeln(id,' из ',ns);
  27.                      PrintLine;
  28.                      TextColor(Cyan); Write(' Марка: '); TextColor(Yellow); GotoXY(30,WhereY); Writeln(Maker);
  29.                      TextColor(Cyan); Write(' Модель:'); TextColor(Yellow); GotoXY(30,WhereY); Writeln(Model);
  30.                      TextColor(Cyan); Write(' Комлектация: '); TextColor(Yellow); GotoXY(30,WhereY); Writeln(Grade);
  31.                      TextColor(Cyan); Write(' Тип кузова: '); TextColor(Yellow); GotoXY(30,WhereY); Writeln(Types);
  32.  
  33.                      With Engine do
  34.                           Begin
  35.                           TextColor(Cyan); Write(' Вид топлива: '); TextColor(Yellow); GotoXY(30,WhereY); Writeln(Fuel_Type);
  36.                           TextColor(Cyan); Write(' Мощность двигателя, л.с.: '); TextColor(Yellow);
  37.                           GotoXY(30,WhereY); Writeln(Power);
  38.                           TextColor(Cyan); Write(' Объём двигателя, см^3: '); TextColor(Yellow);
  39.                           GotoXY(30,WhereY); Writeln(Volume);
  40.                           TextColor(Cyan); Write(' Расположение цилиндров: '); TextColor(Yellow);
  41.                           GotoXY(30,WhereY); Writeln(Cylinders)
  42.                           end; {End with engine}
  43.  
  44.                      Writeln;
  45.                      TextColor(Cyan); Writeln(' Расход топлива, л/100 км: ');
  46.  
  47.                      With Consumption do
  48.                           Begin
  49.                           GotoXY(1,WhereY); TextColor(Cyan); Write(' По городу: '); TextColor(Yellow); Write(City:4:1);
  50.                           GotoXY(32,WhereY); TextColor(Cyan); Write(' По трассе: '); TextColor(Yellow); Write(Track:4:1);
  51.                           GotoXY(63,WhereY); TextColor(Cyan); Write(' Смешанный: '); TextColor(Yellow); Writeln(Mixed:4:1);
  52.                           end; {End with Consumption}
  53.                      Writeln;
  54.  
  55.                      TextColor(Cyan); Write(' Трансмиссия: '); TextColor(Yellow); GotoXY(30,WhereY); Writeln(Transmission);
  56.                      TextColor(Cyan); Write(' Тип привода: '); TextColor(Yellow); GotoXY(30,WhereY); Writeln(Drive);
  57.                      TextColor(Cyan); Write(' Цвет: '); TextColor(Yellow); GotoXY(30,WhereY); Writeln(Color);
  58.                      TextColor(Cyan); Write(' Год выпуска: '); TextColor(Yellow); GotoXY(30,WhereY); Writeln(Year);
  59.                      TextColor(Cyan); Write(' Стоимость, руб.: '); TextColor(Yellow); GotoXY(30,WhereY); Writeln(Price);
  60.                      PrintLine;
  61.                      end; {End with data}
  62.                 {----- Управление Start -----}
  63.                 Ch:=Readkey; {Считываем ASCII-код клавиши}
  64.                 {#72 - стрелка вверх / #80 - стрелка вниз}
  65.                 if (Ch in [#72,#80]) then
  66.                      Case Ch of
  67.                           #80:Begin {Стрелка вниз}
  68.                           Inc(id); {Определяем номер элемента в массиве}
  69.  
  70.                           {Если элемент был последним, то возвращаемся к первому}
  71.                           if (id > Ns) then id:=1;{Первый элемент массива}
  72.                           end;
  73.                           #72:Begin {Стрелка вверх}
  74.                           Dec(id); {Определяем номер элемента в массиве}
  75.  
  76.                                                   {Если элемент был первым, то возвращаемся к последнему}
  77.                                                   if (id < 1) then id:=Ns;
  78.                                                   end;
  79.                                          end; {Case Ch}
  80.                 Until (Ch = #27); {Клавиша "Esc"}
  81.                 {----- Управление End -----}
  82.                 end; {end else}
  83. PrintMainMenu; {Возврат в основное меню}
  84. end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement