Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 21, средняя оценка - 4.67
HOST_ERROR
194 / 33 / 3
Регистрация: 12.05.2010
Сообщений: 361
#1

Создание меню в консоли (не контекстное) - C++

25.09.2011, 22:19. Просмотров 3233. Ответов 2
Метки нет (Все метки)

Доброй ночи, кому вечеру и утру в Америке.
Сижу на втором курсе и еще до такой темы не доходили, но в ней сейчас нужда.
Ой, забыл саму тему обьявить. [Error: 1]
Char a[65]=Тема: Создание меню в консоли (не контекстное).\0

Необходимо создать меню в консоли из нескольких пунктов и выбирать их мышкой,
при наведении, пункт выделяется по бокам символами (на скринах ниже это: ##),
а при клике выполнить то, что уже заложенно в этом пункте.

Если не сложно, выложите полностью код, я уже с гуглом разберусь, что что делает.
0
Миниатюры
Создание меню в консоли (не контекстное)  
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.09.2011, 22:19
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Создание меню в консоли (не контекстное) (C++):

Создание меню в консоли для работы с классом "Дробь"
очень нужна помощь,как надо описать сложение вычитание умножение и деление...

Контекстное меню в WebBrowser
Как в Builder'е отключить контекстное меню для WebBrowser'a. И можно ли...

Убрать всплывающее контекстное меню
Добавил картинку на форму , по наведению на неё курсора мыши открывается...

вставка своего алгоритма в контекстное меню
Создал небольшой алгоритм редактирующий текст. Хочу сделать так, что бы он...

В программе создать главное и контекстное меню. Вывести справку о разработчике
Вывести на экран все трехзначные числа, которые начинаются и заканчиваются на...

Меню на консоли
Здравствуйте! Изучаю C++, для практики ради делаю консольное меню через класс....

2
OstapBender
584 / 523 / 75
Регистрация: 22.03.2011
Сообщений: 1,585
25.09.2011, 23:43 #2
единственное чё приходит в голову:
получаем координаты окна консоли с помощью getwindowrect() ( X и Y верхнего левого угла будут равны rect.left и rect.top) , hwnd консоли можно получить с помощью getconsolewindow()

руками отсчитываем где находятся ваши надписи на консоли в пикселях (примерно)

далее в бесконечном цикле получаем текущую позицию мышки с помощью getcursorpos()
проверяем позицию мыши (+ погрешность) с позицией каждой надписи на окне и если координаты совпадают, ставим курсор записи на нужное место с помощью setconsolecursorposition() и перерисовываем надпись уже с ##.
еще в начале цикла нужно все надписи переписывать без ## и с парочкой пробелом после них чтобы стереть оставшиеся ##.
и небольшую задержку Sleep можно сделать.

как обработать нажатие мыши пока не знаю.

да, способ может показаться слишком геморным, но едва ли что-то легче можно найти.
1
xAtom
917 / 742 / 299
Регистрация: 09.12.2010
Сообщений: 1,346
Записей в блоге: 1
26.09.2011, 06:01 #3
Лучший ответ Сообщение было отмечено как решение

Решение

HOST_ERROR, вот меню в консоле сделал но только для Windows, только не мешай контролы с консолью, фокус теряться будет и меню будет работать со сбоями, по мне лучше с GUI работать чем в консоле.
3
Миниатюры
Создание меню в консоли (не контекстное)  
Вложения
Тип файла: rar menu.rar (41.1 Кб, 344 просмотров)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.09.2011, 06:01
Привет! Вот еще темы с решениями:

Меню в консоли
По условию нужно сделать что-то вроде меню в консоли. Чисто теоретически...

Меню в консоли
есть код для менюшки, по идее при нажатии стрелок вверх или вниз, должен...

Меню в консоли
Меня интересует вот что: зачем в функции int menu(); вот это условие ...

Работа с меню в консоли
я написал программу #include<iostream.h> #include<conio.h>...


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

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

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