Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовая программирование.doc
Скачиваний:
16
Добавлен:
19.03.2016
Размер:
931.33 Кб
Скачать

Файл «mainmenu.C»

#include "my.h"

void mmenu() { // Показ главного меню

line = 9; // Количество строк в главном меню

system("cls");

pos = 1;

updatemm(pos); // Обновление меню

do {

key = getch();

switch(key) {

case 72: { // Нажата стрелка вверх

pos -= 1;

if(pos == 0)

pos = line;

updatemm(pos);

break;

}

case 80: { // Нажата стрелка вниз

pos += 1;

if(pos == (line + 1))

pos = 1;

updatemm(pos);

break;

}

case 13: { // Нажат ввод

key = 0;

break;

}

}

} while(key != 0);

makemm(pos); // Выполнение выбранной опции в главном меню

}

void updatemm(unsigned char pos) { // Обновление главного меню

system("cls");

printf("\n\n\n\n\n\n\n\n\n\n\n%25c", 201);

for(i = 1; i <= 26; i++)

printf("%c", 205);

if(pos == 1) {

printf("%c\n%25c >> Open File %c\n%25c", 187, 186, 186, 204);

} else

printf("%c\n%25c Open File %c\n%25c", 187, 186, 186, 204);

for(i = 1; i <= 26; i++)

printf("%c", 205);

if(pos == 2) {

printf("%c\n%25c >> Save File %c\n%25c", 185, 186, 186, 204);

} else

printf("%c\n%25c Save File %c\n%25c", 185, 186, 186, 204);

for(i = 1; i <= 26; i++)

printf("%c", 205);

if(pos == 3) {

printf("%c\n%25c >> Delete File %c\n%25c", 185, 186, 186, 204);

} else

printf("%c\n%25c Delete File %c\n%25c", 185, 186, 186, 204);

for(i = 1; i <= 26; i++)

printf("%c", 205);

if(pos == 4) {

printf("%c\n%25c >> View Data %c\n%25c", 185, 186, 186, 204);

} else

printf("%c\n%25c View Data %c\n%25c", 185, 186, 186, 204);

for(i = 1; i <= 26; i++)

printf("%c", 205);

if(pos == 5) {

printf("%c\n%25c >> Enter Data %c\n%25c", 185, 186, 186, 204);

} else

printf("%c\n%25c Enter Data %c\n%25c", 185, 186, 186, 204);

for(i = 1; i <= 26; i++)

printf("%c", 205);

if(pos == 6) {

printf("%c\n%25c >> Delete Data %c\n%25c", 185, 186, 186, 204);

} else

printf("%c\n%25c Delete Data %c\n%25c", 185, 186, 186, 204);

for(i = 1; i <= 26; i++)

printf("%c", 205);

if(pos == 7) {

printf("%c\n%25c >> Look Intro %c\n%25c", 185, 186, 186, 204);

} else

printf("%c\n%25c Look Intro %c\n%25c", 185, 186, 186, 204);

for(i = 1; i <= 26; i++)

printf("%c", 205);

if(pos == 8) {

printf("%c\n%25c >> About %c\n%25c", 185, 186, 186, 204);

} else

printf("%c\n%25c About %c\n%25c", 185, 186, 186, 204);

for(i = 1; i <= 26; i++)

printf("%c", 205);

if(pos == 9) {

printf("%c\n%25c >> Exit %c\n%25c", 185, 186, 186, 200);

} else

printf("%c\n%25c Exit %c\n%25c", 185, 186, 186, 200);

for(i = 1; i <= 26; i++)

printf("%c", 205);

printf("%c\n", 188);

}

void makemm(unsigned char pos) { // Выполнение выбранной опции в главном меню

switch(pos) {

case 1: { // Открытие файла

openfile();

break;

}

case 2: { // Сохранение файла

if(datasize() == 0) { // Если нет записей

report("Records not found.",

"Please enter the data.",

"To return the main menu, press any key...");

} else {

savefile();

}

mmenu(); // Вернуться в главное меню

break;

}

case 3: { // Удаление файла

deletefile();

break;

}

case 4: { // Просмотр данных

if(datasize() == 0) { // Если нет записей

report("Records not found.",

"Please enter the data or to open the file.",

"To return the main menu, press any key...");

mmenu(); // Вернуться в главное меню

} else {

smenu(); // Показать подменю с записями

}

break;

}

case 5: { // Ввод данных

inputdata();

break;

}

case 6: { // Удаление данных

if(datasize() == 0) { // Если нет записей

report("Records not found.",

"Please enter the data.",

"To return the main menu, press any key...");

} else {

deletedata();

report("All data removed.","",

"To return the main menu, press any key...");

}

mmenu(); // Вернуться в главное меню

break;

}

case 7: { // Показать заставку

intro();

break;

}

case 8: { // О программе

about();

break;

}

case 9: { // Выход

savefile(); // Запрос на сохранение файла

exit(0);

break;

}

}

}