2012-04-26 109 views
6

当您在Windows 8中触摸屏幕时,鼠标指针将隐藏,直到您移动鼠标(或其他指针设备)。这在桌面和Metro界面中都会发生。如何在Windows 8中的触摸交互后显示指针

我们有一个程序允许人们使用其他输入方法(例如操纵杆)来移动鼠标指针,所以我需要确保鼠标指针可见。

如何强制显示鼠标指针?

+0

你不能显示自己为指针?你使用什么堆栈? XAML,HTML或C++? – jv42 2012-04-27 07:16:24

+0

这是在桌面上运行的可访问性的COM程序。 我们可以在“真实”的顶部显示一个自定义指针,但它不一定是正确的形状或尊重用户在Windows中的指针设置(它通常会改变为可访问性),所以如果我们可以更好重新显示Windows指针。 – 2012-05-01 09:15:43

回答

1

您可以设置触摸反馈的标志。

[setting]->[control panel]->[pen and touch]->[touch feekback]项目,有一个复选框[show visual feedback when touch the screen]。如果您不能选中复选框,您可以在触摸屏幕时显示鼠标指针而不编码任何内容。

+0

这不会显示指针,它只会在您触摸屏幕时显示。 – Hjulle 2013-08-14 21:15:23

0

你可以注入鼠标移动启动操纵杆控制之前,使用Windows API:

POINT p; 
GetCursorPos(&p); 

MOUSEINPUT mi; 
mi.dx = (LONG) ((p.x * 65535)/screen_width); 
mi.dy = (LONG) ((p.y * 65535)/screen_height); 
mi.mouseData = 0; 
mi.dwFlags = type | MOUSEEVENTF_ABSOLUTE; 
mi.time = 0; 
mi.dwExtraInfo = NULL; 

INPUT input; 
input.type = INPUT_MOUSE; 
input.mi = mi; 

SendInput(1, &input, sizeof(INPUT));