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

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

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 21, средняя оценка - 4.67
HOST_ERROR
 Аватар для HOST_ERROR
193 / 32 / 2
Регистрация: 12.05.2010
Сообщений: 361
25.09.2011, 22:19     Создание меню в консоли (не контекстное) #1
Доброй ночи, кому вечеру и утру в Америке.
Сижу на втором курсе и еще до такой темы не доходили, но в ней сейчас нужда.
Ой, забыл саму тему обьявить. [Error: 1]
Char a[65]=Тема: Создание меню в консоли (не контекстное).\0

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

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

C++ Меню в консоли
C++ оригинальное меню в консоли
C++ вставка своего алгоритма в контекстное меню
Контекстное меню в WebBrowser C++
C++ В программе создать главное и контекстное меню. Вывести справку о разработчике
C++ Меню в консоли
C++ Убрать всплывающее контекстное меню
C++ Меню на консоли

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

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

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

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

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

да, способ может показаться слишком геморным, но едва ли что-то легче можно найти.
xAtom
 Аватар для xAtom
910 / 735 / 60
Регистрация: 09.12.2010
Сообщений: 1,346
Записей в блоге: 1
26.09.2011, 06:01     Создание меню в консоли (не контекстное) #3
Сообщение было отмечено автором темы, экспертом или модератором как ответ
HOST_ERROR, вот меню в консоле сделал но только для Windows, только не мешай контролы с консолью, фокус теряться будет и меню будет работать со сбоями, по мне лучше с GUI работать чем в консоле.
Миниатюры
Создание меню в консоли (не контекстное)  
Вложения
Тип файла: rar menu.rar (41.1 Кб, 308 просмотров)
Yandex
Объявления
26.09.2011, 06:01     Создание меню в консоли (не контекстное)
Ответ Создать тему
Опции темы

Текущее время: 12:28. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru