【问题标题】:How to simulate touch with left mousebutton如何用鼠标左键模拟触摸
【发布时间】:2014-04-19 11:11:53
【问题描述】:
我正在开发一个 Firemonkey 应用程序,它应该在带有触摸屏的 Windows 上运行。
因为我的开发系统没有触摸屏,所以我无法测试某些控件的行为。例如,TListbox 中的平移不适用于鼠标按钮。它仅在设置了 KeyState 中的 ssTouch 时才有效。
有没有办法通过鼠标模拟触摸?
问候,
迈克尔
【问题讨论】:
标签:
delphi
firemonkey
delphi-xe4
firemonkey-fm3
【解决方案1】:
嗯,除了显而易见的答案(保存并获得那个触摸屏!),还有一些解决方案,但它们可能有点涉及。
如果我想在 PC 上执行此操作,我会先复制 Firemonkey 源代码并将其包含在我的项目中。
在检查您的 Firemonkey 的“本地”副本是否正确编译后,您必须编辑此文件:“FMX.Platform.Win.pas”。打开这个文件,然后搜索“ssTouch”。
在 WM_LBUTTONDOWN 处理程序内部,必须有一些逻辑来确定“ssTouch”是否是 KeyState 的一部分。自己加进去,然后左键应该被评估为触摸输入。