Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.90
zver171992
0 / 0 / 0
Регистрация: 18.11.2010
Сообщений: 11
#1

Создание меню - C++

24.11.2010, 22:40. Просмотров 1281. Ответов 17
Метки нет (Все метки)

необходимо создать в Turbo C меню из 5 пунтктов, первые 4 пункта выполняют открытие файла из какого либо каталога, а последний пункт - выход. Помогите пожалуйста
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.11.2010, 22:40     Создание меню
Посмотрите здесь:

Создание меню в С++ - C++
Помогите создать меню в С++, что-бы открывал лабараторные

Создание меню - C++
Нужно создать вывод меню с разделами: 1-Статистика, 2-Результаты, 3-... чтобы при нажатии цифры происходило соответствующие действие.

Создание меню - C++
Здравствуйте. Подскажите пожалуйста! Почему при создании res-файла, выдаёт ошибку? Вот код: res.h #define M_op 100 #define M_ex 101 ...

Создание меню - C++
#include "stdafx.h" #include <cmath> #include <clocale> #include <fstream> #include <iostream> using namespace std; double...

Создание меню - C++
Помогите пожалуйста написать текст программы отображающий на экране главное меню, состоящее из 4-х пунктов: файл, правка, вид, опции....

Создание консольного меню - C++
Дорогие друзья-товарищи, нужен совет по работе с консолью в Windows/Linux. Существуют ли какие-либо библиотеки (что наверняка) и функции,...

Создание ресторанного меню - C++
На экран выводится меню: Что желаете заказать? 1. Горячее 2. Суп При выборе пункта 1, появляется подменю: Горячее: 1. Семга...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
asics
Freelance
Эксперт С++
2846 / 1783 / 144
Регистрация: 09.09.2010
Сообщений: 3,841
24.11.2010, 22:55     Создание меню #2
switch тебе в руки.
zver171992
0 / 0 / 0
Регистрация: 18.11.2010
Сообщений: 11
24.11.2010, 22:56  [ТС]     Создание меню #3
Цитата Сообщение от asics Посмотреть сообщение
switch тебе в руки.
а можно по подробнее я использовал switch в своем коде но файлы почему то упорно отказываются открываться((
Stealik
5 / 5 / 1
Регистрация: 24.11.2010
Сообщений: 10
24.11.2010, 22:59     Создание меню #4
Скинь код
zver171992
0 / 0 / 0
Регистрация: 18.11.2010
Сообщений: 11
24.11.2010, 23:28  [ТС]     Создание меню #5
Цитата Сообщение от Stealik Посмотреть сообщение
Скинь код

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
#include <stdio.h> 
#include <bios.h> 
#include <conio.h> 
#include <stdl ib.h>
void lb2 (void); 
void lb3 (uoid); 
void lb4 (void);
 void lb5 (void); 
void ex (void); 
main ()
{ int ch=0, s=0, i=0; 
clrscr (); 
textnode (C80); 
textbackground (BLACK); 
while (ch! =283)
{ switch (ch) 
{
case 15360: ex(); break; 
case 818: system (“labal2.exe); break; 
case 1875: system("labat3.exe"); break; 
case 1332: system("labat4.exe"); break; 
case 158S: system("labai5.exe"); break; 
case 1846: exit (0); break;
case 18432: s=s-l; break;
case 28488: s-s+l; break;
case 7181: if (i= = 0)  system ("laba2.exe");
if (i= =l|| i= =-5) system ("laba3.exe"); 
if (i= =2||i= =-4) system ("laba4.exe"); 
if (i= =3||i= =-3) system ("laba5.exe"); 
if (i= =4||i= =-2) exit (0);break;
}
I=s%5;
switch (i)
{case 0:lb2 (); break; 
case 1:lb3 (); break; 
case 2:lb4 (); break; 
case 3:lb5 (); break; 
case 4:ex (); break; 
case -l:ex (); break; 
case -2:lb5 (); break; 
case -3:lb4  (); break;
case -4:lb3  (); break;
 
} 
ch=bioskey (0);
}
}
void lb2 (void)
 { clrscr (); 
textmode (C80);
 textcolor (14); 
textbackground (1); 
window (26,7,52,14); 
textbackground (4);
cprintf (" Лабораторная работа 2"); textbackground (1);
cprintf (" Лабораторная работа  3 "); 
cprintf (" Лабораторная работа 4 ");
 cprintf (" Лабораторная работа 5 );
cprintf ("  Выход   ");
textcolor (0); 
textbackground (7); 
textmode (LASTMODE);
}
void lb3 (void) 
{ clrscr ();
textnode (C80);
 textcolor (14); 
textbackground (1); 
window (26,7,52,14); 
textbackground (4);
cprintf (" Лабораторная работа 2"); textbackground (1);
cprintf (" Лабораторная работа  3 "); 
cprintf (" Лабораторная работа 4 ");
 cprintf (" Лабораторная работа 5 );
cprintf ("  Выход   ");
textcolor (0); 
textbackground (7); 
textmode (LASTMODE);
 
}
void lb4 (void) 
{ clrscr ();
textnode (C80);
 textcolor (14); 
textbackground (1); 
window (26,7,52,14); 
textbackground (4);
cprintf (" Лабораторная работа 2"); textbackground (1);
cprintf (" Лабораторная работа  3 "); 
cprintf (" Лабораторная работа 4 ");
 cprintf (" Лабораторная работа 5); 
}
void lb5 (void) 
{ clrscr ();
textnode (C80);
 textcolor (14); 
textbackground (1); 
window (26,7,52,14); 
textbackground (4);
cprintf (" Лабораторная работа 2"); textbackground (1);
cprintf (" Лабораторная работа  3 "); 
cprintf (" Лабораторная работа 4 ");
 cprintf (" Лабораторная работа 5 );
cprintf ("  Выход   ");
textcolor (0); 
textbackground (7); 
textmode (LASTMODE);
}
void ex (void) 
{ clrscr ();
textnode (C80);
 textcolor (14); 
textbackground (1); 
window (26,7,52,14); 
cprintf (" Лабораторная работа 2"); textbackground (1);
cprintf (" Лабораторная работа  3 "); 
cprintf (" Лабораторная работа 4 ");
 cprintf (" Лабораторная работа 5 );
textbackground (4);
textcolor (14IBLINX);
cprintf ("  Выход   ");
textbackground (1); 
 
textcolor (14); 
textbackground (7); 
textcolor (0); 
 
textmode (LASTMODE);
 
}
Набирал код по памяти возможны ошибки.. Не могу понять почему не открывает мои файлы.Объяснитье пожалуйста как и что, по возможности подправьте код.Заранее благодарен
zver171992
0 / 0 / 0
Регистрация: 18.11.2010
Сообщений: 11
05.12.2010, 06:59  [ТС]     Создание меню #6
Помогите!Код рабочий но после вызова программы из меню не происходит очистки экрана, хотя в цикле на это я уделил внимание,но все равно отказывается очищать

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
char m[5][10] = { "menu1", "menu2", "menu3", "menu4", "exit" };
char dos[5][10] = { "laba1.exe", "laba2.exe", "laba3.exe", "laba4.exe", "exit" };
void paint(int index)
{ int i;
  window(26,7,52,14);
  for(i=0;i<5;i++)
  { gotoxy(1,1+i);
    textattr((i!=index)?7:15);
    textbackground((i!=index)?0:1);
    cprintf("%s",m[i]);
  }
 
}
 
void main(void)
{ int i=5; int c;
  int index=0;
 
  clrscr();
  while(1)
  {
  paint(index);
  while(!kbhit());
  c = getch();
 
  switch(c)
  {
    case 72:
    index--; if(index<0) index=4;
    break;
    case 80:
    index++; if(index>4) index=0;
    break;
    case 13:
    gotoxy(1,6);
    if(index==4) return;
    system(dos[index]);
    break;
  }
  }
  getch();
}
kazak
3034 / 2355 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
05.12.2010, 07:32     Создание меню #7
Цитата Сообщение от zver171992 Посмотреть сообщение
хотя в цикле на это я уделил внимание
В цикле ни какой очистки экрана нет.
zver171992
0 / 0 / 0
Регистрация: 18.11.2010
Сообщений: 11
05.12.2010, 07:47  [ТС]     Создание меню #8
Цитата Сообщение от kazak Посмотреть сообщение
В цикле ни какой очистки экрана нет.
можешь растолковать подробнее я новичок в этом
kazak
3034 / 2355 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
05.12.2010, 07:54     Создание меню #9
Что тут толковать, функция clrscr(), которая очищает экран стоит до цикла, хотя ей уместней находиться в цекле, допустим перед paint.
zver171992
0 / 0 / 0
Регистрация: 18.11.2010
Сообщений: 11
05.12.2010, 07:59  [ТС]     Создание меню #10
Цитата Сообщение от kazak Посмотреть сообщение
Что тут толковать, функция clrscr(), которая очищает экран стоит до цикла, хотя ей уместней находиться в цекле, допустим перед paint.
я делал так .... результат нулевой...экран не чистится
kazak
3034 / 2355 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
05.12.2010, 08:04     Создание меню #11
Еще вариант после system(dos[index]);
zver171992
0 / 0 / 0
Регистрация: 18.11.2010
Сообщений: 11
05.12.2010, 08:06  [ТС]     Создание меню #12
не помогает((
kazak
3034 / 2355 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
05.12.2010, 08:13     Создание меню #13
Цитата Сообщение от zver171992 Посмотреть сообщение
window(26,7,52,14);
А если эту строчку закоментировать?
zver171992
0 / 0 / 0
Регистрация: 18.11.2010
Сообщений: 11
05.12.2010, 08:15  [ТС]     Создание меню #14
Цитата Сообщение от kazak Посмотреть сообщение
А если эту строчку закоментировать?
без нее работает но мне нужно меню ровно по центру, а без
Цитата Сообщение от kazak Посмотреть сообщение
window(26,7,52,14);
получается все полевому сверху.
kazak
3034 / 2355 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
05.12.2010, 08:20     Создание меню #15
Попробуй пару
C
1
2
window(1,1,80,25);
clrscr();
zver171992
0 / 0 / 0
Регистрация: 18.11.2010
Сообщений: 11
05.12.2010, 08:25  [ТС]     Создание меню #16
Цитата Сообщение от kazak Посмотреть сообщение
Попробуй пару
нет результата... все как и было на шаге до
kazak
3034 / 2355 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
05.12.2010, 08:32     Создание меню #17
На шаге до было закоментированная строка, можно раскоментировать.
Очистку экрана поставить после вызова программы.
C
1
2
3
4
5
6
7
    case 13:
        gotoxy(1,6);
        if(index==4) return;
        system(dos[index]);
        window(1,1,80,25);
        clrscr();
        break;
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.12.2010, 08:38     Создание меню
Еще ссылки по теме:

Создание меню в консоли (не контекстное) - C++
Доброй ночи, кому вечеру и утру в Америке. Сижу на втором курсе и еще до такой темы не доходили, но в ней сейчас нужда. Ой, забыл саму...

Организация меню и создание функции - C++
Доброго времени суток! Я написал два кода 1 .Ввести строку текста. При наличии в строке трех плюсов подряд(+++) заменяю на один ...

Создание меню в консольном приложении - C++
Здравствуйте! Нужно создать меню. Каждый пункт в меню - программа, т.е. в меню можно выбирать какую программу запустить. Подскажите...

switch, case, создание многоуровнего меню - C++
Добрый день. Хотел спросить у вас совет по реализации. Пишу многоуровневое меню в консоли. Вот часть кода ... switch(input_main) ...

Создание меню и сохранение в текстовой файл - C++
Добрый вечер! Задали задачу, аналогичную прошлой теме Задание: Создать абстрактный класс CVehicle. На его основе реализовать классы...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
zver171992
0 / 0 / 0
Регистрация: 18.11.2010
Сообщений: 11
05.12.2010, 08:38  [ТС]     Создание меню #18
Цитата Сообщение от kazak Посмотреть сообщение
На шаге до было закоментированная строка, можно раскоментировать.
Очистку экрана поставить после вызова программы.
C
1
2
3
4
5
6
7
    case 13:
        gotoxy(1,6);
        if(index==4) return;
        system(dos[index]);
        window(1,1,80,25);
        clrscr();
        break;
Спасибо заработало я понял свою ошибку... чистил только кусок экрана под меню...
Yandex
Объявления
05.12.2010, 08:38     Создание меню
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru