获取Synaptics触控板以发送实际的滚轮事件


11

我有一台带Synaptics触控板的笔记本电脑(三星9系列),并且装有Windows XP。

此触控板的一个不错的功能之一是,您可以通过将两个手指放在触控板上然后向上或向下拖动来进行滚动。

但是真正令人讨厌的事情是:由于某种原因,Synaptics触控板具有特殊的滚动逻辑,而不是像现有的任何其他滚动轮一样将滚动轮事件发送到Windows。它将鼠标光标更改为滚动条的图形,然后使用看似专有的机制滚动窗口本身。

这样做的问题是,这种滚动不适用于所有应用程序。例如,它不适用于基于GTK的应用程序,我经常使用它。

我真的不知道Synaptics开发人员为什么选择以牺牲用户为代价来重新发明滚轮滚动...

无论如何,有没有办法让我的触控板发送标准的滚轮事件,使其可以在所有应用程序中使用?


Synaptics驱动程序在“ 控制面板”-“鼠标”下是否有任何配置?
grawity 2012年

当然,这是我首先去过的地方,但发现那里没有任何帮助。
Ram Rachum 2012年

Answers:


8

使用Synaptics驱动程序滚动GTK +应用程序中

使用Windows笔记本电脑时,您可能会被突触式触摸板卡住。

这些cr脚的驱动程序及其所谓的虚拟滚动在光标下方创建了一个假窗口,以显示其自定义滚动图标。

该窗口会干扰发送到其下的应用程序的信号,由于某些原因,GTK无法检测到该信号(开发人员很可能不在乎我们)。结果是无法在Wireshark或Pidgin等流行的GTK应用程序中滚动。

与Spy ++和Procmon玩了一段时间后,我发现了一个有趣的注册表项,可以解决我的问题。滚动时,此设置将禁用自定义光标,从而有效解决GTK应用程序中的滚动问题。

首先,您必须打开regedit。导航到
HKEY_LOCAL_MACHINE\SOFTWARE\Synaptics\SynTPEnh
并创建一个名为UseScrollCursor0 的新DWORD 。

重新启动SynTPEh(或重新启动)。

滚动现在应该可以在GTK应用程序中使用,但是您将不再看到滚动光标。


非常感谢,我遇到了同样的问题,这很烦人!
Laurent le Beau-Martin'5

对于Zune之类的应用程序,这也同样有效,谢谢!
2012年

适用于Synaptics 17,但不适用于版本15(至少在我的Dell XPS L501x上)。但是,这是一个很好的建议,即使我说Windows可能会永久毁坏我的硬件,我也安装了版本17:P就像一个魅力!
kumarharsh

1

让我这样解释。触摸板本身具有绝对为0的滚动概念。它感测到触摸...并报告X和Y。驱动程序获取该信息...并确定如何将其解释为各种类似于鼠标的手势。所以...简而言之...由驱动程序确定滚动条的WTF。所以这里的问题是驱动程序...或驱动程序配置。而且由于您没有指定Linux的风格,所以您的结果可能会好坏参半。Synaptics确实为常见的Linux版本创建了一套套件 ...但是您需要获得它们的套件 ...或者如果您的发行版可用...则超出了我的范围。


1
不是Linux,而是Windows XP。有帮助吗?
Ram Rachum 2012年

GTK并非Windows固有的...将Windows滚动消息转换为GTK可以理解的内容时可能会出现问题。
TheCompWiz 2012年

2
触摸板和鼠标滚轮使用相同的滚动消息,而GTK2在后者上也可以正常工作(事实上,我已经对它们进行了测试)。
grawity 2012年

1
尝试在Windows中为触摸板更新驱动程序。 synaptics.com/resources/drivers 您可能会有更好的运气。
TheCompWiz 2012年

我检查了驱动程序页面,奇怪的是我有一个更高级的版本。我有15.3.22.0,而驱动程序页面提供了15.2.20。
Ram Rachum

0

我的突触鼠标有一个pinchzoom选项,可模拟滚轮滚动。在鼠标>设备设置>设置下查看。您将两个手指放在鼠标垫上,使它们靠得更近或更远,它将以一种或另一种方式滚动。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.