static void Main(string[] args) { Console.Title = "Airport information panel. Sukhov I. 2016-02-05"; /*Заголовок консольной формы*/ String[,] Arrivals_Array = new string[100, 7]; /*Создаем масив с данными по прилетам*/ ///////////////////////////////////////////////////////////////////////////////////////////////////////// //тестовый масив прилетов /*рейс 1*/ Arrivals_Array[0, 0] = "U571"; Arrivals_Array[0, 1] = "Berlin Fly"; Arrivals_Array[0, 2] = "16:45"; Arrivals_Array[0, 3] = "Munich"; Arrivals_Array[0, 4] = "D"; Arrivals_Array[0, 5] = "Delayed"; Arrivals_Array[0, 6] = "12"; /*рейс 2*/ Arrivals_Array[1, 0] = "A015"; Arrivals_Array[1, 1] = "Turkish Air"; Arrivals_Array[1, 2] = "17:45"; Arrivals_Array[1, 3] = "Istambul"; Arrivals_Array[1, 4] = "A"; Arrivals_Array[1, 5] = "Flight"; Arrivals_Array[1, 6] = "3"; /*рейс 3*/ Arrivals_Array[2, 0] = "M117"; Arrivals_Array[2, 1] = "MAU"; Arrivals_Array[2, 2] = "10:30"; Arrivals_Array[2, 3] = "Kyiv/Borispil"; Arrivals_Array[2, 4] = "B"; Arrivals_Array[2, 5] = "Arrived"; Arrivals_Array[2, 6] = "9"; /*рейс 4*/ Arrivals_Array[3, 0] = "N737"; Arrivals_Array[3, 1] = "NY Air"; Arrivals_Array[3, 2] = "19:20"; Arrivals_Array[3, 3] = "New York"; Arrivals_Array[3, 4] = "C"; Arrivals_Array[3, 5] = "Arrived"; Arrivals_Array[3, 6] = "6"; /*рейс 5*/ Arrivals_Array[4, 0] = "G737"; Arrivals_Array[4, 1] = "Georgia Fly"; Arrivals_Array[4, 2] = "11:20"; Arrivals_Array[4, 3] = "Tbilisi"; Arrivals_Array[4, 4] = "A"; Arrivals_Array[4, 5] = "Flight"; Arrivals_Array[4, 6] = "4"; /*рейс 6*/ Arrivals_Array[5, 0] = "K190"; Arrivals_Array[5, 1] = "Air Astana"; Arrivals_Array[5, 2] = "23:55"; Arrivals_Array[5, 3] = "Astana"; Arrivals_Array[5, 4] = "D"; Arrivals_Array[5, 5] = "Flight"; Arrivals_Array[5, 6] = "7"; ///////////////////////////////////////////////////////////////////////////////////////////////////////// Main_Menu Main_Menu_List = new Main_Menu(); /*Создаем экземпляр обьекта типа "главное меню"*/ Arrivals Arrivals_table = new Arrivals(); /*создаем экземпляр обьекта типа "таблица прибытий"*/ Evacuation Evacuation = new Evacuation(); ConsoleKeyInfo Console_keyInfo; /*Создаем переменную содержит "нажатую клавишу"*/ Return_To_Main_Menu: /*Метка возврта к главному меню*/ Main_Menu_List.Show_Main_Menu(); /*Вызываем метод по отображению главного меню*/ /*закрытый цикл по пунктам главного меню*/ while (1==1) { Console_keyInfo = Console.ReadKey(); /*Считываем нажатую клавишу в переменную*/ /*При нажатии стрелки вверх - переходим на один пункт меню вверх*/ if(Console_keyInfo.Key == ConsoleKey.UpArrow) Main_Menu_List.Menu_Position_Number = --Main_Menu_List.Menu_Position_Number; /*При нажатии стрелки вниз - переходим на один пункт меню вниз*/ if (Console_keyInfo.Key == ConsoleKey.DownArrow) Main_Menu_List.Menu_Position_Number = ++Main_Menu_List.Menu_Position_Number; /*При нажатии клавиши E - возврат к пункту меню EXIT*/ if (Console_keyInfo.Key == ConsoleKey.E) Main_Menu_List.Menu_Position_Number = 7; /*При нажатии Enter - выход из цикла*/ if (Console_keyInfo.Key == ConsoleKey.Enter) break; Main_Menu_List.Show_Main_Menu(); /*Вызываем метод по отображению главного меню*/ }; ///////////////////////////////////////////////////////////////////////////////////////////////////////////// /*Блок работы с таблицами прилетов Arrivals*/ //////////////////////////////////////////// /*При выборе пункта меню "SHOW ARRIVALS" запускаем панель отображения прилетов*/ /*Если пункт меню==1 тогда выводим таблицу прибытий "Arrivals"*/ if (Main_Menu_List.Menu_Position_Number==1) { Arrivals_table.Show_Arrival_Table_Head(); /*прорисовываем заголовок таблицы*/ Arrivals_table.Show_Arrival_Table_Data(Arrivals_Array, 1, "No Sort"); /*прорисовываем часть таблицы с данными о прилетах*/ Arrivals_table.Show_Arrival_Table_End(); /*прорисовываем концовку таблицы*/ while (1==1) /*Закрытый цикл с переходами по столбцам таблицы*/ { Console_keyInfo = Console.ReadKey(); /*Считываем нажатую клавишу в переменную*/ /*при нажатии стрелки влево- переходим к следующему столбцу*/ if (Console_keyInfo.Key == ConsoleKey.RightArrow) Arrivals_table.Arrival_Table_Collumn_Num = ++Arrivals_table.Arrival_Table_Collumn_Num; /*при нажатии стрелки вправо- переходим к предыдущему столбцу*/ if (Console_keyInfo.Key == ConsoleKey.LeftArrow) Arrivals_table.Arrival_Table_Collumn_Num = --Arrivals_table.Arrival_Table_Collumn_Num; Arrivals_table.Show_Arrival_Table_Head(); /*отслеживаем нажатия клавиш ввре/вниз для сортировки выводимых данных*/ switch (Console_keyInfo.Key) { case ConsoleKey.UpArrow: Arrivals_table.Show_Arrival_Table_Data(Arrivals_Array, Arrivals_table.Arrival_Table_Collumn_Num,"ASC"); break; case ConsoleKey.DownArrow: Arrivals_table.Show_Arrival_Table_Data(Arrivals_Array, Arrivals_table.Arrival_Table_Collumn_Num, "DESC"); break; default: Arrivals_table.Show_Arrival_Table_Data(Arrivals_Array, Arrivals_table.Arrival_Table_Collumn_Num, "No sort"); break; } Arrivals_table.Show_Arrival_Table_End(); /*при нажатии клавиши E- выходим в начало программы, в главное меню*/ if (Console_keyInfo.Key == ConsoleKey.E) goto Return_To_Main_Menu; /*метка переходав в начало программы и запуска главного меню*/ }; }; //////////////////////////////////////////// /*При выборе пункта меню "Add new flygth to Arrival" зупаскаем панель отображения прилетов*/ string[] New_ArrivaL = new string[7]; if (Main_Menu_List.Menu_Position_Number == 3) { New_ArrivaL = Arrivals_table.Arrivals_Add_New_Arrival(); /*добавляем новую запись в наш масив прилетов*/ if (New_ArrivaL[0] != null & New_ArrivaL[0] != "") for (Int32 i = 1; i <= Arrivals_Array.GetLength(0); i++) { if (Arrivals_Array[i - 1, 0] == null) { for (Int32 j = 1; j <= 7; j++) { Arrivals_Array[i - 1, j - 1] = New_ArrivaL[j - 1]; } break; } } goto Return_To_Main_Menu; } /////////////////////////////////////////// /*запускаем окно эвакуации*/ if (Main_Menu_List.Menu_Position_Number == 8) { Evacuation.Evacuation_Screen(); /*выхываем меню создания нового рейса прибытия*/ Console.ReadLine(); } }