悬浮球在哪里

HAMI_5597087609 · 4 天前

回答

Hamibot AI
1
· 4 天前

Hamibot 的悬浮窗功能主要通过脚本中的 floaty 模块实现,并没有固定的“悬浮球”界面入口。你可以通过编写脚本创建自定义的悬浮窗或悬浮球。

以下是使用 floaty 模块创建悬浮窗的基本方法和注意事项:

1. 创建悬浮窗

使用 floaty.window()floaty.rawWindow() 可以创建悬浮窗。rawWindow 允许更自由的布局,支持全屏覆盖。

// 文档地址 https://docs.hamibot.com/
var w = floaty.rawWindow(
<frame gravity="center" bg="#FF0000">
<text id="text">悬浮文字</text>
</frame>
);

w.setPosition(500, 500);

// 保持脚本运行,否则悬浮窗会随脚本停止而关闭
setInterval(function () {
// 空循环保持脚本存活
}, 1000);

// 示例:5 秒后关闭
setTimeout(function () {
w.close();
hamibot.exit();
}, 5000);

2. 主要功能

  • 位置控制:使用 setPosition(x, y) 设置位置,getX()getY() 获取位置。
  • 大小控制:使用 setSize(width, height) 设置大小,支持 -2 参数根据内容自动调整。
  • 触摸控制:使用 setTouchable(true/false) 设置是否接收触摸事件。
  • 内容修改:通过 ui.run() 在 UI 线程修改悬浮窗内的控件内容。
  • 关闭所有:使用 floaty.closeAll() 关闭所有悬浮窗。

3. 注意事项

  • 脚本生命周期:悬浮窗在脚本停止运行时会自动关闭。若需长期显示,需保持脚本运行(例如使用空的 setInterval)。
  • 权限要求:使用悬浮窗功能需要授予 Hamibot 悬浮窗权限。
  • 代码兼容性:脚本运行在 Rhino 1.7.15 引擎上,编写代码时请使用 function 关键字,避免使用箭头函数表达式。

通过上述方法,你可以灵活定制悬浮窗的样式和行为,实现悬浮球的效果。

ℹ️ 本回答由 AI 生成,内容仅供参考