【发布时间】:2014-04-12 06:21:57
【问题描述】:
我试图将触摸输入转换为鼠标输入。但是现在我有一个奇怪的问题,ShowCursor 函数随机工作。
这是我的代码的一部分
case ETouchMove:
if (mInMove)
{
int X = Point->Move.X;
int Y = Point->Move.Y;
mCursor.X = ((mCursorBak.X + mSpeed*X) < GetSystemMetrics(SM_CXSCREEN)
&& (mCursorBak.X + mSpeed*X) >0)
? mCursorBak.X + mSpeed*X : 0;
mCursor.Y = ((mCursorBak.Y + mSpeed*Y) < GetSystemMetrics(SM_CXSCREEN)
&& (mCursorBak.Y + mSpeed*Y) >0)
? mCursorBak.Y + mSpeed*Y : 0;
SetCursorPos(mCursor.X, mCursor.Y);
SetPhysicalCursorPos(mCursor.X, mCursor.Y);
ShowCursor(true);
}
break;
它有时会起作用,但大多数时候光标在移动过程中不会出现。我在 MSDN 页面上看到有人说此功能仅适用于由同一线程创建的窗口。但是尝试后似乎没有区别。
似乎我不断收到 CURSOR_SUPPRESSED,这是 win8 中的新功能。反正有什么不受抑制的,因为它有时仍然有效吗? 我也搜索了stackoverflow,但似乎还没有答案,有人能给点建议吗?提前谢谢。
在没有鼠标的平板电脑上工作 win8.1 视觉工作室 2013
【问题讨论】: