Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.10.2014, 21:04   #1
FULEREN
Пользователь
 
Регистрация: 23.03.2012
Сообщений: 56
По умолчанию ReadConsoleInput. Менюшка.

Доброго времени суток, пилю подобие менюшки в консоли. Раньше использовал GetAsyncKeyState, но это неудобно. Нужен хук например на кнопку Enter. Помогите пожалуйста с примером использования ReadConsoleInput. Если была нажата клавиша Enter, то вывести MessageBox. Заранее спасибо.
FULEREN вне форума Ответить с цитированием
Старый 15.10.2014, 22:20   #2
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,331
По умолчанию

http://forums.codeguru.com/showthrea...soleInput-loop
waleri вне форума Ответить с цитированием
Старый 17.10.2014, 16:47   #3
FULEREN
Пользователь
 
Регистрация: 23.03.2012
Сообщений: 56
По умолчанию

не могли вы бы привести пример кода для моей ситуации, ибо я плохо понимаю пример который находится по ссылке
FULEREN вне форума Ответить с цитированием
Старый 17.10.2014, 17:22   #4
8Observer8
Старожил
 
Аватар для 8Observer8
 
Регистрация: 02.01.2011
Сообщений: 3,323
По умолчанию

FULEREN, а можно ли без WinAPI обойтись? Вместо ReadConsoleInput использовать объкте std::cin

Output:
Цитата:
Enter command (q=quit, h=help):
> h

List of commands:
h = help
s = show message
q = quit of the program

Enter command (q=quit, h=help):
> s

Message: hello, world!

Enter command (q=quit, h=help):
> q
Press <RETURN> to close this window...
main.cpp
Код:
#include <iostream>
#include <string>

int main()
{
    while( true ) {
        std::cout << "\nEnter command (q=quit, h=help):\n> ";

        // Get command
        std::string command;
        if ( !std::getline( std::cin, command ) || command == "q" ) {
            break;
        }

        // Commands
        if ( command == "h" ) {
            std::cout << "\nList of commands:" << std::endl;
            std::cout << "h = help" << std::endl;
            std::cout << "s = show message" << std::endl;
            std::cout << "q = quit of the program" << std::endl;
        } else if ( command == "s" ) {
            std::cout << "\nMessage: hello, world!" << std::endl;
        } else {
            std::cout << "\nError: unknown command. Try again." << std::endl;
        }
    }

    return 0;
}

Последний раз редактировалось 8Observer8; 17.10.2014 в 17:27.
8Observer8 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
не выводится менюшка wolf950 PHP 1 03.12.2013 22:28
менюшка mixon-21 Общие вопросы C/C++ 1 06.03.2013 12:16
Менюшка. Паскаль AndreyKolesov Помощь студентам 0 11.05.2012 18:10
С#. Консольная менюшка. ZaVyLoN Общие вопросы .NET 4 02.11.2010 15:13
Менюшка формы.. Roberto Win Api 2 27.04.2008 10:55