LUACN论坛

 找回密码
 加入我们

QQ登录

只需一步,快速开始

搜索
热搜: YJWOW MagicStone BoL
查看: 176|回复: 0

[综合] 【搬运Wowpedia】事件Events(六)

[复制链接]
发表于 2023-7-11 09:43:04 | 显示全部楼层 |阅读模式
本帖最后由 懒动行不行 于 2023-7-11 09:44 AM 编辑

CreateFrame

创建一个框架对象。
[Lua] 纯文本查看 复制代码
frame = CreateFrame(frameType [, name, parent, template, id])

参数
frameType
字符串型(string) - 框架的类型; 例如"Frame" (框架)or "Button"(按钮).
name

字符串型(string) ? - 要分配给框架的全局可访问名称,如使用匿名框架则为 nil。
parent
框架(frame)?🔗 - 分配给框架的父框架, 如果没有则为 nil ; 不能为字符串. 也可以用 Region:SetParent()设置。
template
字符串型(string)? - 要继承的虚拟XML模板的逗号分隔列表; 也可见 FrameXML模版完整清单
id

数字类型(number)? - 分配给框架的识别号. 可以用 Frame:SetID()设置。
返回值
frame框架(Frame🔗 - 已创建的框架对象或者某一个其他框架类型对象。
框架类型
在the XML schema {⁠, ⁠}中可以获得框架的可能类型:
细节
  • 如果从有一个继承模板,激发框架的 OnLoad 脚本。
  • 框架不能被删除或垃圾收集,因此最好重新利用
  • 可以使用固有框架

示例
  • 显示一个纹理,该纹理也是UIParent的父对象,因此它将具有相同的UI比例,并在使用Alt-Z切换时隐藏。
[Lua] 纯文本查看 复制代码
local f = CreateFrame("Frame", nil, UIParent)
f:SetPoint("CENTER")
f:SetSize(64, 64)

f.tex = f:CreateTexture()
f.tex:SetAllPoints(f)
f.tex:SetTexture("interface/icons/inv_mushroom_11")
                                                                                                                            [url=][/url]                                    
                                                                                            
                                                                              
[Lua] 纯文本查看 复制代码
local btn = CreateFrame("Button", nil, UIParent, "UIPanelButtonTemplate")
btn:SetPoint("CENTER")
btn:SetSize(100, 40)
btn:SetText("Click me")
btn:SetScript("OnClick", function(self, button)
        print("You clicked me with "..button)
end)
[Lua] 纯文本查看 复制代码
local m = CreateFrame("PlayerModel")
m:SetPoint("CENTER")
m:SetSize(200, 200)
m:SetDisplayInfo(21723) -- murloccostume.m2
  • 注册正在触发的事件,如聊天消息以及何时开始/停止移动。
[Lua] 纯文本查看 复制代码
local function OnEvent(self, event, ...)
        print(event, ...)
end

local f = CreateFrame("Frame")
f:RegisterEvent("CHAT_MSG_CHANNEL")
f:RegisterEvent("PLAYER_STARTED_MOVING")
f:RegisterEvent("PLAYER_STOPPED_MOVING")
f:SetScript("OnEvent", OnEvent)


补丁变更
Patch 2.0.1 (2006-12-05): 第4个参数, inheritFrame, 现在可以接受逗号分隔值.   
Patch 1.11.0 (2006-06-19): 新增第4个参数, inheritFrame.[1]   
Patch 1.10.0 (2006-03-28): 新增.[2]



其他参见
CreateFramePool([size=90%])
参考文献





回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

小黑屋|手机版|Archiver|LUACN论坛

GMT+8, 2024-5-2 08:24 PM , Processed in 0.044842 second(s), 13 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表