HLFX.Ru Forum
Показать все 9 сообщений этой темы на одной странице

HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Технические вопросы (https://hlfx.ru/forum/forumdisplay.php?forumid=20)
-- вопрос по программированию (https://hlfx.ru/forum/showthread.php?threadid=3113)


Отправлено thambs 25-11-2011 в 07:45:

вопрос по программированию

продублирую здесь.

программа за каждый шаг основной итерации рисует график через plplot и выводит в консоль некоторые данные. мне нужно, что бы по нажатию определённой клавиши я программа остановила цикл и выполнила некоторые действия и вернулась к циклу. естественно, задержку выставлять недопустимо. время выполнения одной итерации ~10^{-2} сек.

я незнаю по каким ключевым словам это гууглить.

__________________
http://www.moddb.com/mods/monorail-quest


Отправлено Scrama 25-11-2011 в 16:08:

Тебе в цикле надо мессаги собирать и обрабатывать, можно не на каждой итерации. Как это сделать на билдере/дельфах я знаю, на чистом апи - без понятия, не пробовал, но где-то по GetMessages/ProcessMessages можно загуглить.

__________________
"Злобным гениям не нужна харизма." © Shooter__Andy
"Making stuff for an "old ugly game" can be ten times more fun than grinding on a map for a dull, next-gen title." © Lunaran


Отправлено thambs 25-11-2011 в 16:20:

Scrama

мне бы вообще знать как этот термин называется. (прога на фортране)

__________________
http://www.moddb.com/mods/monorail-quest


Отправлено marikcool 25-11-2011 в 20:51:

вообщем цикле программы проверяй сообщение клавиши.
также погугли по созданию консольных приложений, там же в примерах есть как обработать сообщение клавиш для корректного выхода.


Отправлено thambs 25-11-2011 в 21:45:

>сообщение клавиши.

какое ни будь специальное название для этой штуки есть? банально не могу нормально загууглить

__________________
http://www.moddb.com/mods/monorail-quest


Отправлено marikcool 25-11-2011 в 22:03:

key event , windows message , sendmessage/postmessage


Отправлено Government-Man 25-11-2011 в 23:47:

Если программа консольная, то тебе нужен цикл с ReadConsoleInput. Плохо в ней то, что она не успокаивается и не возвращается, пока не прочитает хотя бы один эвент...


Отправлено Scrama 26-11-2011 в 03:13:

Вроде, в фортране оно так же getc/fgetc - не писал на нем никогда.
http://docs.oracle.com/cd/E19957-01...ecbe/index.html

Добавлено 26-11-2011 в 10:13:

Хотя не, не вариант - будет каждый раз ждать юзерского действия. В паскале была замечательная конструкция

code:
if keypressed then begin c := readkey; .. end;

Возможно, тут есть подобное. А вообще любое консольное приложение замечательно прерывается по Ctrl-C.

__________________
"Злобным гениям не нужна харизма." © Shooter__Andy
"Making stuff for an "old ugly game" can be ten times more fun than grinding on a map for a dull, next-gen title." © Lunaran


Отправлено pRoxxx 05-12-2011 в 20:56:

http://msdn.microsoft.com/en-us/lib...esktop/ms646301(v=vs.85).aspx
Не?


Временная зона GMT. Текущее время 19:49.
Показать все 9 сообщений этой темы на одной странице

На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024