首先介绍的是一些常用控件类型,暂时不会介绍它们详细的方法和属性,因为涉及到继承的东西,所以在下一个阶段说明时一起解说了。这里只会提及简单开发时常用的一些处理,方便使用。同样,代码我不配图勒,所以读的时候,最好自己运行起来。另外,别忘了以后无特殊说明,CreateFrame代表IGAS.GUI.CreateFrame,而不是原始的CreateFrame。
Form控件
1. 创建
local frm = CreateFrame("Form", "TestF", UIParent)
frm.Visible = true
现在能看到屏幕中央出现了一个窗口框体,带有关闭按钮,上面有标题栏,按住标题栏可以移动窗口,右下角,右边框,下边框可以拖动,你可以随便调整看看,注意这里的第二句,Visible 属性表示是否可见,设为true的话,如果你关闭了这个框体,当再次运行这段代码时,框体会再次出现的。这样方便调试。
2. 当关闭时销毁
self:Dispose()
end
self:Dispose()
end
self:Dispose()
end
frm.OnHide = OnHide
这个功能专门提出来,是因为学习和调试时常会用到。
这里的frm:OnHide() 表示定义frm的OnHide隐藏事件处理方法, Dispose方法是销毁函数,每个框体都可以调用它来销毁自身。上面的三种写法都是一样的,第三种的好处在于,可以多个框体使用同一个事件处理方法,减少内存占用。如何使用,看个人程序书写风格。
有时候你在Form框体上创建了多余的框体,比如多创建了几个下拉框,那么要消除它们有几个方法(暂时不考虑以后的图形化开发工具,只考虑使用代码的情况),一个是每个下拉框写一次Disepose,这样比较麻烦,还有一个方法,就是销毁掉Form框体,然后运行代码再生成一次,而加入这段代码后,你只需要点击关闭按钮,就可以销毁掉这个框体,比较方便,当然成品插件中就不需要这样写了。
3. 大小的调整
frm.Width = 500 -- 框体的宽度
frm.Height = 500 -- 框体的高度
frm:SetMaxResize(600, 600) -- 框体的最大宽度,高度
frm:SetMinResize(200, 300) -- 框体的最小宽度,高度
前两个容易理解,后面两个是当你按住右下角拖放框体时,框体能够变得最大和最小的样子。
4. 标题栏
frm.Caption = "My Form" -- 框体的标题
IGAS.Print(frm.Caption) -- 打印框体的标题
这里用了一个IGAS.Print函数,用于打印字符串到聊天栏里面。这是一个调试用函数吧,也许正式版本下会取消或者修改掉,所以别在正式插件中使用它,我还在考虑如何定位。
5. 消息
frm.Message = "This is a message."
frm.Message = "这是一个消息。"
随便使用哪句,Form框体的左下角会出现这句话,这个可以用来显示提示或错误信息。
这个控件是比较简单的,稍微熟悉下就可以。