如何在 RAP 中定位光标指针

How to position the cursor pointer in RAP

我正在尝试创建一个 RAP 应用程序,它需要在游戏过程中将光标指针移动到某个位置。

有没有办法使用 SWT 移动光标位置?显然 java.awt.Robot().mouseMove 在这种情况下无效,因为它使用 AWT。

RAP 不支持更改光标位置。

Display::getCursorLocation 允许查询(最后已知的)光标位置,但是 setCursorLocation,在 SWT 中可用,但 RAP 没有实现。

即使有 API 服务器端,我怀疑客户端安全策略是否会允许弄乱鼠标指针位置。


针对您的评论,对于端到端测试 RAP UIs,您可能需要查看此 post: https://eclipsesource.com/blogs/2014/04/29/how-to-write-ui-tests-for-rap-with-selenium-2-0/,它描述了如何设置 Selenium UI 测试RAP 申请。

根据我的经验,最好将 UI 与应用程序代码的其余部分分开,这样 UI 层就会变得非常薄,无需进行自动化测试就足够安全。

另一种测试 SWT 或 RAP UIs 的方法是将相关的小部件暴露给测试代码并使用 Widget::notifyListeners 来模拟用户交互。同样,如果您的应用程序逻辑被完全分离并且可以在测试时用测试双打替换,这将再次发挥最佳效果。