1 / 1 / 0
Регистрация: 12.12.2010
Сообщений: 112
|
|
1 | |
Как использовать таймер21.12.2010, 17:01. Показов 2557. Ответов 15
Метки нет (Все метки)
Здравствуйте, господа.
Можно ли каким-либо образом использовать таймер в программе вообще? Увидел описание таймера, однако не нашёл timer.h. Мне необходимо, чтобы программа в том случае, если пользователь ничего не делает опр. промежуток времени в течение getch (), выдавала сообщение. Заранее благодарю за возможные ответы.
0
|
21.12.2010, 17:01 | |
Ответы с готовыми решениями:
15
Использовать время (таймер) в С++ консоль Оставить все как есть || использовать парсер xml || или использовать struct Как организовать таймер? как сделать таймер? |
257 / 144 / 18
Регистрация: 27.12.2009
Сообщений: 909
|
|
21.12.2010, 17:24 | 2 |
где хочешь использовать таймер? на форме или в консоле?
0
|
1 / 1 / 0
Регистрация: 12.12.2010
Сообщений: 112
|
|
21.12.2010, 17:26 [ТС] | 3 |
Если есть такая возможность, то в консоли.
0
|
21.12.2010, 17:37 | 4 |
YourLastSong, любые ф-ции ввода ждут ввода, таким образом посчитать сколько длится ожидание невозможно (правда я не знаю о каком таймере вы говорите, может какая-то левая библиотека умеет это делать). Могу предложить низкоуровневые API ввода\вывода. Через них можно даже нажатие и отпускание клавиши перехватить)
Не по теме: ща тему найду, когда с АПИ разбирался, как раз что-то похожее спрашивал.
0
|
1 / 1 / 0
Регистрация: 12.12.2010
Сообщений: 112
|
|
21.12.2010, 17:40 [ТС] | 5 |
Да, точно, про это я не подумал как-то.
Постарайтесь поискать, если не сложно, однако надо именно для консоли.
0
|
257 / 144 / 18
Регистрация: 27.12.2009
Сообщений: 909
|
|
21.12.2010, 17:45 | 7 |
тут была тема, найти не могу, короче там отсчет начинается сразу после пуска программы(обращаясь к системному), далее если небыло использование никакой функции, после определенного времени, например 10 минут, срабатывает функция exit(0);
жестко, но работало.... может и не в этом форуме... чет найти не могу...
0
|
1 / 1 / 0
Регистрация: 12.12.2010
Сообщений: 112
|
|
21.12.2010, 17:50 [ТС] | 8 |
Выдаётся вот такое сообщение:
Код
'c' : undeclared identifier
0
|
21.12.2010, 17:59 | 9 | |||||
Вот то, что вам нужно:
0
|
1 / 1 / 0
Регистрация: 12.12.2010
Сообщений: 112
|
|
21.12.2010, 19:14 [ТС] | 10 |
А как сделать проверку на нажатие клавиши 'a' или 'b' в EventType==KEY_EVENT, не подскажете?
Понял только, как для пробела сделать, но мне необходимо использовать нажатие клавиш 'a' или 'b' сейчас.
0
|
21.12.2010, 19:27 | 11 | |||||
0
|
1 / 1 / 0
Регистрация: 12.12.2010
Сообщений: 112
|
|
21.12.2010, 19:53 [ТС] | 12 |
Код
#include "stdafx.h" #include <iostream> #include <conio.h> #include <windows.h> using namespace std; int x; const int C=20; char c; void main() { cout << "a - start" << endl << "b - quit"; HANDLE hstd=GetStdHandle(STD_INPUT_HANDLE); INPUT_RECORD IR[C]; DWORD read; while(PeekConsoleInputA(hstd,IR,C,&read)){ a1: Sleep(1); x++; bool F=false; for(int i=0;i<read;i++){ if(IR[i].EventType==KEY_EVENT){ if(IR[i].Event.KeyEvent.wVirtualKeyCode==0x41) system("cls"); if(IR[i].Event.KeyEvent.wVirtualKeyCode==0x42) exit (EXIT_SUCCESS); break;} } if (x > 8000) { cout << endl << endl << "You need to choose one of this menu points" << endl; getch (); x = 0; goto a1; } } Однако в том случае, если нажать любой другой символ, те символы распознаваться уже не будут вообще. Как это можно исправить?
0
|
1 / 1 / 0
Регистрация: 12.12.2010
Сообщений: 112
|
|
22.12.2010, 22:22 [ТС] | 14 |
Попробовал, не получилось почему-то.
Сможете показать у меня на примре, как это можно сделать, пожалуйста? Добавлено через 14 часов 48 минут Так сможет кто-нибудь помочь исправить, пожалуйста?
0
|
23.12.2010, 15:14 | 15 | |||||
1
|
18.12.2012, 12:20 | 16 |
deleted
Не по теме: вообще в другую тему писал
0
|
18.12.2012, 12:20 | |
18.12.2012, 12:20 | |
Помогаю со студенческими работами здесь
16
Как сделать таймер Как подключить таймер к игре? Как написать свой таймер? Как реализовать таймер на форме Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |