【搬运Wowpedia】事件Events(五)
Frame:RegisterEvent该方法归属于 Frame 组件
注册一个框架用以监视 events.
success = frame:RegisterEvent(event)
参数
event字符串型(string) - 将对象注册为监视的事件的名称
返回值
success布尔型(boolean) - 如果框架成功为新的事件创建则为true,否则为false,例如框架已经注册到了该事件。
细节
组件通常会按照注册的顺序收到事件通知,但Frame:UnregisterEvent倾向于将最后注册的组件上移以填补空白。因此,不应依赖这种行为。
示例
-- 创建一个框架
local f = CreateFrame("Frame")
-- 注册框架并监视事件
f:RegisterEvent("CHAT_MSG_YELL")
f:RegisterEvent("CHAT_MSG_SAY")
-- 当他们发生时处理事件
f:SetScript("OnEvent", function(self, event, ...)
if (event == "CHAT_MSG_YELL") then
print("Argh, stop with the yelling!")
elseif (event == "CHAT_MSG_SAY") then
print("Thanks, that was much softer.")
end
end)
补丁变更https://static.wikia.nocookie.net/wowpedia/images/c/c1/BattleForAzeroth-Logo-Small.png/revision/latest/scale-to-width-down/48?cb=20220421181442 Patch 8.0.1 (2018-07-17): 注册一个不存在的事件现在会引发一个错误,而不是返回nil.
其他参见
[*]The Handling events guide
[*]Frame:UnregisterEvent("event")
[*]Frame:RegisterUnitEvent("event", "unit1"[, "unit2"])
[*]Events
高端大气上档次~!~系统工程啊,不是一两个帖子学得会
谢谢大神。学习了。。感谢你的分享666666
页:
[1]