如何在Windows 7和Windows 8中使用C#知道设备是否支持触控。使用GetSystemMetrics API并不总是能正常工作。还有其他方法可以了解触控功能以及数字化器可以提供的接触点数吗?
你可以查看这个链接:http://msdn.microsoft.com/en-us/library/ms724385%28v=vs.85%29.aspx
有一个叫做GetSystemMetrics
的函数,你可以用它来获取SM_MAXIMUMTOUCHES
。当它的值>0时,表示有触控设备,否则为0。
如果系统中有触控设备,则返回非零值;否则返回0。 SM_MAXIMUMTOUCHES返回系统中每个触控设备支持的最大接触数的总和的最大值。如果系统只有单点触控设备,则返回值为1。如果系统有多点触控设备,则返回硬件可以提供的同时接触数。 Windows Server 2008、Windows Vista和Windows XP/2000:不支持此值。