请启发启发我这个菜鸟吧

jxpeter 2007-09-10 04:48:49
做一个循环,每循环一次为一秒,统计秒数,当外界(如回车)响应,就退出该循环,想了半天也想不出来推出的方法,救命啊~~~~
...全文
273 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
sandlu 2007-09-13
  • 打赏
  • 举报
回复
键入ASCII代码 WM_CHAR OnChar
按键按下 WM_KEYDOWN OnKeyDown
按键释放 WM_KEYUP OnKeyUp


afx_msg void OnChar(UINT nChar, UINT nRepCnt, UINT nFlag);
nChar表示按键的ASCII代码或虚拟键值,在OnChar中ASCII代码,可以区分大小写,但无法区法非可显示字符;在OnKeyDown和OnKeyUp中是虚拟键值,无法区分大小写,但可以确定当前哪个键被按下,包括可显示字符和非可显示字符。
mjf_2008 2007-09-11
  • 打赏
  • 举报
回复
完全没必要用钩子,直接在循环里判断回车键是否被按下就可以实现了。
b2b160 2007-09-11
  • 打赏
  • 举报
回复
应该有个GetKeyState函数吧,获取键盘状态的,在循环里经常查看状态应该可以吧?

如果是WINDOWS的话,就截获WM_KEYDOWN消息
星羽 2007-09-11
  • 打赏
  • 举报
回复
在循环里判断回车有一个弊端

就是如果刚好在 sleep 的时候你按下了回车,反映会延迟

gfxiang 2007-09-10
  • 打赏
  • 举报
回复
#include <windows.h>
#include <stdio.h>
#include <conio.h>

int main()
{
char ch;
while (( ch = getch()) != '\r') {
if (ch == '\b') {
putchar(ch);
putchar(' ');
putchar(ch);
} else
putchar(ch);

Sleep(1000);
// ...
}

return 0;
}
jxpeter 2007-09-10
  • 打赏
  • 举报
回复
谢谢楼上的各位兄弟,

if(获取键盘按键==回车)
break;

“获取键盘按键”----需要的函数是什么?我想要具体的
sandlu 2007-09-10
  • 打赏
  • 举报
回复
此处怎么写?
if(获取键盘按键==回车)
break;
jxpeter 2007-09-10
  • 打赏
  • 举报
回复
while(true){
_sleep(1000);
cout<<count++;
此处怎么写?
if(响应)
break;
}

我还是不知到该如何写?我想要纯c++的函数,谢谢了~~~
programmernew 2007-09-10
  • 打赏
  • 举报
回复
顶一下,^_^
NKLoveRene 2007-09-10
  • 打赏
  • 举报
回复
自己搜搜用钩子函数捕捉键盘响应吧
qld001 2007-09-10
  • 打赏
  • 举报
回复
回车有ASCII码滴,判断条件用这个作比较就行了,hoho
jxpeter 2007-09-10
  • 打赏
  • 举报
回复
请问楼上的,能不能详细一点,我也知道该捕捉键盘响应,但不知用什么函数,谢谢
ghostjeky 2007-09-10
  • 打赏
  • 举报
回复
捕捉键盘消息了,当按下回车时设定一个标记,这个标记可以作为while循环退出的条件

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧