0

我按照以下步骤下载Multi-Touch Vista并将其配置为使用多个鼠标模拟手指触摸。

效果很好,现在屏幕上有两个红点,每个都由鼠标控制。

然后我编写了一个 WPF 应用程序,它有一个带有 Canvas 的窗口,在 Canvas 的 TouchDown 事件处理程序中,我记录了哪个手指(鼠标)正在触摸屏幕。

private void canvas_TouchDown(object sender, TouchEventArgs e)
{
    System.Diagnostics.Debug.WriteLine(e.TouchDevice.Id);
} 

但令我惊讶的Id是,无论我使用哪种鼠标,它总是 258 - 我希望它从 0 或 1 开始,并且 2 个手指(鼠标)之间的 Id 不同。

我在 Win7 32bit 上测试。

4

1 回答 1

0

我最近买了一个触摸显示器,我可以在新显示器上测试相同的代码。事实证明,Id 属性仅在存在多个触摸(手指/触控笔)时才有用,第一个触摸设备将被分配一个“基本 Id”,第二个触摸设备将被分配(“基本 Id”+ 1),并且很快。在我的新触摸显示器上,当我使用所有十根手指时,它们的 ID 将被分配为 428、429、430、...、437。

我猜“基本 ID”在不同的显示器上可能会有所不同。

于 2014-01-11T13:46:08.820 回答