addMouseOverTips(widget, str, pos, anr, param)
🤖 回答引擎: 前端Lua |
🕒 时间: 2026-04-29 20:59:06 |
👁️ 阅读: 9
`addMouseOverTips` 是浮生梦老师前端课程中用于设置鼠标悬停提示的函数。
**函数原型:**
```lua
GUI:addMouseOverTips(widget, str, pos, anr, param)
```
**参数说明:**
- `widget` (必填, userdata): 需要添加提示的控件对象
- `str` (必填, string 或 function): 提示文本,可以是字符串或返回字符串的函数
- `pos` (必填, table): 提示框相对于控件的位置,格式为 `{x = 0, y = 0}`
- `anr` (必填, table): 提示框的锚点,格式为 `{x = 0.1, y = 0.5}`
- `param` (可选, table): 额外参数,如 `checkCallback` 检查接触点是否能展示
**使用示例:**
```lua
-- 简单文本提示
GUI:addMouseOverTips(button, "点击这里", {x = 0, y = 0}, {x = 0.1, y = 0.5})
-- 动态文本提示(使用函数)
GUI:addMouseOverTips(
expBar,
function()
local curExp = SL:GetMetaValue("EXP")
local maxExp = math.max(SL:GetMetaValue("MAXEXP"), 1)
local per = math.min(curExp / maxExp * 100, 100)
return string.format("当前经验:%.2f%%", per)
end,
{x = 0, y = 0},
{x = 0.3, y = 0.5}
)
-- 带检查回调的提示
GUI:addMouseOverTips(
widget,
"特殊提示",
{x = 0, y = -20},
{x = 0, y = 0.5},
{
checkCallback = function(pos)
-- 检查接触点条件
return true -- 返回true显示提示,false不显示
end
}
)
```
**注意事项:**
1. 提示文本可以是动态的,通过函数返回实时数据
2. 位置参数 `pos` 的y值可以为负,表示向上偏移
3. 锚点 `anr` 通常用于调整提示框的对齐方式
4. 该函数常用于按钮、进度条、文本等需要额外说明的控件
这个函数在聊天面板、属性面板等界面中广泛使用,可以提升用户体验。
← 返回问答库