1

我正在尝试制作一个简单比例的滑块,用户只能在水平轴上看到鼠标移动(水平比例上的固定 y 位置)。

更详细地说:当刻度出现时,我希望光标在水平刻度的中心显示为一条短垂直线(又名滑块)。当用户移动鼠标时,滑块应在水平轴上相应移动(不反映垂直轴的任何变化,即应保持在刻度上)

我坚持将光标的外观更改为垂直线滑块,并将光标的移动限制在水平轴上。

这是我尝试过的:

  • 我可以使用 SetMouse 成功放置光标。
  • 我尝试 ShowCursor 来更改光标的外观,但这只有几个命名选项,编号选项不能跨操作系统移植(“数字到形状的映射取决于操作系统”),这是我需要的。关于如何将光标更改为垂直线滑块的任何其他想法?

至于将移动限制为水平,我找不到任何似乎可以做到这一点的 PTB 功能。我确实在 Matlab 中找到了一些解决方法来制作用户 GUI,但似乎这些不能与 PTB 的屏幕一起使用。任何想法都会很棒!

我还是 PTB 的新手,非常感谢您的帮助!

4

1 回答 1

1

我为它写了一个名为slideScale的函数。如果您想了解它是如何工作的,请查看测试脚本

对您来说最重要的是创建一个循环,该循环一直运行到单击并记录光标的位置,例如使用函数 GetMouse(),它为您提供光标的 x 和 y 坐标。然后,您基本上唯一需要做的就是使用您使用 GetMouse() 记录的 x 坐标更新垂直线的位置,而无需更改 y 坐标,您可以使用固定值。

于 2017-01-25T13:43:52.523 回答