Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
IPavel
9 / 9 / 0
Регистрация: 14.01.2013
Сообщений: 102
#1

Не графическое меню - C++

14.01.2013, 20:12. Просмотров 613. Ответов 10
Метки нет (Все метки)

Всем привет!
Мужики подскажите по такому вопросу плз!
Предесловие...
Вобщем дома есть комп который отдан под домашний сервер, работающий 24\7.
И захотелось к его серверным задачам добавить немного разнообразия и сделать из него ещё и будильник с голосовым меню и управлением с пульта...
И всё бы ничего, но я только начинаю дружить с c++ и поэтому возникли вопросы...
Не пинайте сильно если что не так... Я только учусь! ))
Непосредственно возникшая трудность...
Трудность возникла при написание этого самого меню...
Вобще алгоритм такой.
Программа весит демоном и ждёт от пульта команд.
При нажатие на пульте кнопки меню,
открывается "виртуальное" меню воспроизводится фаил с записаным текстом "меню",
и "виртуальный курсор попадает на первый пункт и воспроизводится фаил с названием данного пункта.
Дальше стандартно кнопка вниз -> курсор на следуйщий пункт.
Вобщем я написал так сказать главное меню и передвижение по нему...
Возникла трудность в следуйщем нужно открыть выделенный пункт и так сказать попасть в данный пункт в котором допустим настройки и по которым тоже нужно передвигаться...
Вобщем как такое меню лучше реализовать???
Подскажите пожалуйста!
Что я написал:
Сейчас выложу кусок данного кода...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.01.2013, 20:12
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не графическое меню (C++):

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

Графическое меню в DOS - C++
Возникают ошибки: //Основная программа void main () { int nom=0; int i; char ch; menu m; met: do {

Простенькое графическое меню для консольного приложения DOS - C++
помогите реализовать простенькое графическое меню для консольного приложения DOS

"вертикальное графическое меню" - C++
Построить изображение вертикального меню, внутри должны быть надписи. Я решил таким способом: #include <stdio.h> #include...

Графическое задание. - C++
В общем по заданию строится многоугольник, который потом построчно заливается. В программе возникли некоторые проблемы. В частности,...

Графическое приложение - C++
Здравствуйте форумчане, возник вопрос на который хотелось бы получить вашу помощь, выполняю работу где требуется написать графическое...

10
vxg
Модератор
3184 / 1987 / 227
Регистрация: 13.01.2012
Сообщений: 7,676
14.01.2013, 20:22 #2
ну и где он?
0
IPavel
9 / 9 / 0
Регистрация: 14.01.2013
Сообщений: 102
14.01.2013, 20:25  [ТС] #3
Вот функция меню.
Пока с выводом в консоль для отладки.

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
#include <iostream>
#include <cstdio>
#include <cstring>
#include "jessie.h"
 
int r_menus()
{
  strcpy ( a_status, "menus" );
   cout << "Вошли в меню!" << endl;
 n = 0;
for (;;)
{
  cout << pm[n].n_menu << endl;
  d_vvod();
 if ( strcmp ( vvod, "menu" ) == 0 )
  {
    strcpy ( a_status, "ozid" );
      cout << "Режим ожидания." << endl;
  break;
      }
         else if ( strcmp ( vvod, "vniz" ) == 0 )
  if ( n < 2 ) n++;
  else cout << '\a';
  else if ( strcmp ( vvod, "verh" ) == 0 )
  if ( n > 0 ) n--;
  else cout << '\a';
  }
  return 0;
       }
 
Структура.
struct gmenu
{
 char n_menu[15];
  };
 
extern gmenu pm[4];
0
Pakisan
14 / 14 / 1
Регистрация: 04.01.2013
Сообщений: 61
14.01.2013, 20:26 #4
IPavel, Эм, под пультом ты имеешь в виду пульт(ассоциация телевизионный) или виртуальный?
Если первый, то первое что приходит в голову это ассемблер c паянием пульта и программированием сначала его(ммм.. контроллеры)), а потом и драйвера для взаимодействия с устройством и твоей программкой.
0
IPavel
9 / 9 / 0
Регистрация: 14.01.2013
Сообщений: 102
14.01.2013, 20:32  [ТС] #5
Цитата Сообщение от Pakisan Посмотреть сообщение
IPavel, Эм, под пультом ты имеешь в виду пульт(ассоциация телевизионный) или виртуальный?
Если первый, то первое что приходит в голову это ассемблер c паянием пульта и программированием сначала его(ммм.. контроллеры)), а потом и драйвера для взаимодействия с устройством и твоей программкой.
Всё гораздо просце...
Готовый набор ик прёмник плюс пулт.
От майкрософта например...
И в линухе есть либа для юзания таких девайсов...
Т.е. всё есть...
Осталось только программку наваять...
0
cactus09
Чайник
69 / 69 / 4
Регистрация: 15.02.2012
Сообщений: 475
14.01.2013, 20:34 #6
IPavel, А на этом домашнем сервере какая ОС стоит, может не стоит писать велосипед и просто поискать подобные программы в интернете: т.е. использовать программу для управление ПК с пульта и программу будильник.
0
IPavel
9 / 9 / 0
Регистрация: 14.01.2013
Сообщений: 102
14.01.2013, 20:41  [ТС] #7
Цитата Сообщение от cactus09 Посмотреть сообщение
IPavel, А на этом домашнем сервере какая ОС стоит, может не стоит писать велосипед и просто поискать подобные программы в интернете: т.е. использовать программу для управление ПК с пульта и программу будильник.

Нее!!! Так не пойдёт!
Я с++ учу.
А это так сказать мой первый проект!
На мой взгляд легче учится на реальных проектах чем перепечатывать готовые программы уже кем-то написаные, и радываться мол вон какой я крутой программы ваяю как два пальца об асвальт...
Домашний сервачёк под управлением debian whizzy.
0
IPavel
9 / 9 / 0
Регистрация: 14.01.2013
Сообщений: 102
15.02.2013, 19:51  [ТС] #8
Мужики Ну так что так и не кто не подскажет?
Повторю вопрос...
Как лучше реализовать "не графическое" меню?
Т.е. Визуальных окон не требуется.
Тот код который выкладывал выше был первым пародием...
Сейчас написал на двусвязном списке fifo ...
Но получается я сейчас только брожу по структурам и забираю из них строку...
Т.е. нет никакого функционала у этого меню...
Вот не пойму как прикрутить функционал...
Или может кто подскажет другой вариант...
Конечно я не прошу написать за меня всё...
Просто описать словами алгоритм действий...
Может где пример использования в несколько строк...
И всё...
0
vxg
Модератор
3184 / 1987 / 227
Регистрация: 13.01.2012
Сообщений: 7,676
15.02.2013, 21:59 #9
что значит функционал? чего вы хотите от консоли? пользователю придется сидеть в таком меню как в терминале. в лучшем случае. я вообще хочу сделать что то подобное на базе web-сервера. сервер будет по wi-fi отдавать страницу с оформленными в виде рисунков кнопками. пользователь будет на них жать. сервер будет обрабатывать переход по ссылке воздействуя на kmp. сервер есть осталось научится посылать нажатия клавиш в kmp. пока руки не доходят.
0
-=ЮрА=-
Заблокирован
Автор FAQ
15.02.2013, 23:03 #10
IPavel, твое задание далеко нетривиальное и с таким багажём знаний
Цитата Сообщение от IPavel Посмотреть сообщение
И всё бы ничего, но я только начинаю дружить с c++ и поэтому возникли вопросы...
тебе будет нереально сложно воплотить что хочешь. По поводу звука вот лови http://msdn.microsoft.com/en-us/library/ms720163(v=vs.85).aspx там идёт описание с примерами Text-to-Speech Tutorial (SAPI 5.3) в частности интерфейса ISpVoice. На счёт пульта ты вообще загнул, юзай WinLirk ты его хоть бы со своим будильником сочленил бы. В любом случае начинка голос/ИК куда сложней целой тысячи твоих будильников, подумай зачем простецкой проге такой наворот?

Не по теме:

PS:Изучать язык следует постепенно а не бросаться на супер тяжёлые задачи с базовыми знаниями - так новых знаний не получить(в 7-м классе квантовую физику почему то не читают, можешь экстраполировать суть этой мысли на данный топик )

0
IPavel
9 / 9 / 0
Регистрация: 14.01.2013
Сообщений: 102
16.02.2013, 12:13  [ТС] #11
Цитата Сообщение от vxg Посмотреть сообщение
что значит функционал? чего вы хотите от консоли? пользователю придется сидеть в таком меню как в терминале. в лучшем случае. я вообще хочу сделать что то подобное на базе web-сервера. сервер будет по wi-fi отдавать страницу с оформленными в виде рисунков кнопками. пользователь будет на них жать. сервер будет обрабатывать переход по ссылке воздействуя на kmp. сервер есть осталось научится посылать нажатия клавиш в kmp. пока руки не доходят.
Вы меня не допоняли...
У меня вобще нет никакого вывода визуальной информации не на консоль не в окнах...
У меня только голосовой вывод с озвучиванием пункта меню или другого действия...

Добавлено через 26 минут
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
IPavel, твое задание далеко нетривиальное и с таким багажём знаний тебе будет нереально сложно воплотить что хочешь. По поводу звука вот лови http://msdn.microsoft.com/en-us/library/ms720163(v=vs.85).aspx там идёт описание с примерами Text-to-Speech Tutorial (SAPI 5.3) в частности интерфейса ISpVoice. На счёт пульта ты вообще загнул, юзай WinLirk ты его хоть бы со своим будильником сочленил бы. В любом случае начинка голос/ИК куда сложней целой тысячи твоих будильников, подумай зачем простецкой проге такой наворот?

Не по теме:

PS:Изучать язык следует постепенно а не бросаться на супер тяжёлые задачи с базовыми знаниями - так новых знаний не получить(в 7-м классе квантовую физику почему то не читают, можешь экстраполировать суть этой мысли на данный топик )

За ссылку спасибо!
На счёт остального...
Ну во первых, я не собираюсь писать текст ту спич движок...
Я прикрутил уже к готовому бесплатному...
Так что вывод голоса уже есть!
И менюшка у меня уже читается...
Во вторых на счёт winlirc, я под linux кодю...
Поэтому хочу юзать lirc под linux...
Ну что там сложного будет прикрутить к моей проге его...
Я конечно пока lirc не смотрел что там да как...
Но предполагаю там на какой-нибудь метод стандартный для взаимодействия...
socket, очередь сообщений или что-то подобное...
Останется только написать приёмник с вывода lirc в моей программе...
С сокетами, сообщениями разобрался малость, так что думаю простенький прнимающий интерфейс напишу...
Вопрос же в другом...
А именно в реализации меню...
Пробывал два способа реализации...
Наподобии которого выложен выше, но это самый мой первый опыт...
Потом написал что-то похожее на классах...
Недавно переписал с использованием списков fifo...
Сейчас думаю об функционале меню...
Т.е. у меня сейчас в последней реализации только одни пункты которые ничего не делают...
Вот думаю об том как лучше реализовать отработку того или иного пункта...
Т.е. прикрутить к своему меню действия.
Просто хочется структурировать код...
А никак у меня было в выше приведёном коде...
Сообщения в ручную были написаны, программа скакала как блоха на собаке по коду без какой-нибудь логической зависимости...
Вобщем разобраться что куда было очень трудно...


Уххх... Как много настрочил...
0
16.02.2013, 12:13
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.02.2013, 12:13
Привет! Вот еще темы с ответами:

Графическое/текстовое оформление - C++
Как в Си можно графически немного отформатировать программу: изменить задний фон, цвет текста, рамку какую-то сделать и.т.д.?

Графическое представление графа - C++
Помогите плз: Граф задаётся своей матрицей смежностей. Вывести на экран: • графическое представление графа. для меня она о4...

Графическое отображение полинома - C++
Доброго времени суток форумчане. Сложилась проблема, встала задача которую я не могу воплотить в жизнь. Задача такова. Разработать...

Графическое задание на С++: танчики - C++
Здравствуйте форумчане, сегодня на практике в универе дали задание, написать программу на С++, в которой должно быть поле, на котором ездят...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

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