首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

C控制台台处置鼠标消息

2013-06-25 
C控制台台处理鼠标消息在网上搜索到一个处理控制台下鼠标消息的代码,按照说明,应该是鼠标点击左键后就能做

C控制台台处理鼠标消息
在网上搜索到一个处理控制台下鼠标消息的代码,
按照说明,应该是鼠标点击左键后就能做对应的处理,
可是我发现程序起来之后只看到一次鼠标坐标消息,
为了排查,我加了一个打印消息的语句,发现:
第一次打印了鼠标消息0x00000002后就没有了
其他消息如:菜单0x00000008 焦点0x00000020 按键0x00000001
都能正常获取到。
求大家伙帮帮忙,看看什么原因
代码如下


        for (;;)
{
ReadConsoleInput(hin, &mouseRec, 1, &res);
if (mouseRec.EventType == MOUSE_EVENT)
{
if (mouseRec.Event.MouseEvent.dwEventFlags == DOUBLE_CLICK)
{
break;
}

pos = mouseRec.Event.MouseEvent.dwMousePosition;
DisplayMousePos(hout, pos);

if (mouseRec.Event.MouseEvent.dwButtonState == FROM_LEFT_1ST_BUTTON_PRESSED)
{
FillConsoleOutputCharacter(hout, 'a', 1, pos, &num_written);
}
}
printf("0x%08x\n", mouseRec.EventType);
}
C 控制台 鼠标消息处理
[解决办法]
前面有调用过 SetConsoleMode(hin, ENABLE_WINDOW_INPUT 
[解决办法]
 ENABLE_MOUSE_INPUT); 函数没有?

热点排行