UMG字典
Slot属性
RenderOpacity:透明度设置,可以用来做动画的消失到出现
RenderTransform:偏移旋转变形属性,scale可以用改变方向,多数用于做动画使用
Clipping:裁剪属性,
Clip to Bounds:超出的部分不显示
IsVolatile:勾选后不进行缓存,每一帧都更新
Navigation:根据当前的控件根据左右上下进行遍历,满足切换条件就切换
Left、Right、Up、Down、Next、Previous
Border
可改变子级颜色,一般用作模板
Button
Events事件:
OnClicked:点击事件
OnPressed:按下事件
OnReleased:抬起事件
OnHovered:滑入生效、滑出生效
OnUnhovered:滑出生效
Style属性:显示样式
Normal:默认
Hovered:滑入
Pressed:按下
Disabled:不可用状态
CheckBox
复选框:
UncheckedImage:未选中
UncheckedHoveredImage:未选中但滑入
UncheckedPressedImage:未选中按下
CheckedImage:选中
CheckedHoveredImage:选中但滑入
CheckedPressedImage:选中按下
OnCheckSlateChanged:响应事件,选中和不选中
Image
Tiling属性
No Tile:默认
Horizontal:横向平铺
Vertica:竖向平铺
Both:横竖都平铺
Size Box
Child Layout:
Width Override、Height Override生效前提是Size To Content勾选(SizeBox在CanvasPanel情况下,Overlay则不存在这种情况)
Min Desired Height:
Min Desired Width:超过Size Box子控件的大小就将子级扩宽到Size Box大小,否则最小保持子控件的大小
Max Desired Height:
Max Desired Width:小于Size Box子控件的大小就将其缩小,大于Size Box子控件则就等于子控件大小
NameSlot
允许在自己创建的模板下创建一个子项,使用模板时可以在NamedSlot下添加一个子控件
Horizontal和Vertical Box
Horizontal Box:横向排列子控件容器
Horizontal Box中子控件Auto、Fill属性
Fill自动填充剩余的控件,Horizontal Box大小减去其他子控件的大小,剩下的地方由Fill自动填充,后方数字是填充比例
Vertical Box操作与Horizontal Box一样,区别是纵向排列
Overlay
一般是代替Canvas panel使用作为根来使用堆叠其他子控件
ProgressBar
进度条:
BackGroungImage:背景图
FillImage:填充图
FillColorandOpacity:填充的颜色
Precent:填充的比例最大为1
Bar Fill Type:填充的形式,默认从左到右
Rich Text Box
富文本:让文字显示不同的样式(包括颜色,字体样式等)
通过创建DataTable继承自RichTextStyleRow,来创建不同的字体样式
使用:Content文本中<DataTable中的样式名>中间字体显示一种样式</>
创建RichImageStyleRow的DataTable:
使用时DecoratorClasses添加进RichImageStyleRow的数据表格创建蓝图,并将父类改为RIchImageStyleRow
Slider
Bar属性:滑动条样式
Thumb属性:滑动块样式
Bar Thickness:滑动条宽度
Appearance属性:
Value:
Min Value:
Max Vaue:
Orientation:滑动块的方向(Horizontal、Vertical)
可改变滑动条和滑动块的颜色
Step Size:每次滑动的步长
OnValueChange:当Slider的value变化响应的事件
Text
Outline Setting:文字描边
Strike Brush:实现类似删除的效果
Shadow Offset:阴影的偏移
Shadow Color:阴影的颜色
Wrapping分类下:
Auto Wrap Text:到达边框大小自动换行
换行行高的设置:改变Line Height Percentage
Canvas Panel
容器
给子节点添加一个Slot属性,锚点信息,定位子控件的位置属性
Scale Box
Stretching分类下:
Stretch:缩放形式(默认是Scale to Fit)成比例缩放
Scroll Box
带滚动条的容器
Orientation:滚动条的方向(Horizontal和Vertical)
Animate Wheeling Scrolling:缓动动画
UniformGridPanel
GridPanel
SafeZone
安全区:
适用于手机屏幕,子控件扩充并不会占用无法显示的区域
Widget Switcher
控件切换器:只显示一个子控件
Switcher分类下:
Active Widget Index:默认显示的下标
Wrap Box
子控件自动排布,自动换行
Inner Slot Padding:子控件的留白
Input-ComboBox
下拉列表框
Default Options:自己添加选项
Selected Option:默认的选项
Content Padding:偏移设置
Menu Border Brush:下拉列表的背景
Input-EditableText和EditableText(MultiLine)
输入文本和多行输入文本
可输入内容,没有内容默认显示提示文本
IsReadOnly:是否只读,不可修改
IsPassword:是否为密码,显示密码样式
OnTextChanged:输入时进行事件响应
OnTextCommitted:输入完成回车时再进行响应
Input-TextBox和TextBox(MultiLine)
OnTextChanged:文本改变时响应事件
OnTextCommitted:文本输入完成时响应事件
Input-SpinBox
Minimum Value:最小值
Maximum Value:最大值
Minimum Slider Value:滑动条最小值
Maximum Slider Value:滑动条最大值
Min Fractional Digits:小数点后最小位数
Max Fractional Digits:小数点后最大位数
Slider Exponent:每次滑动的步长
OnValueChanged:值变化响应事件
OnValueCommitted:值确定响应事件
OnBeginSliderMovement:Slider开始移动响应事件
OnEndSliderMovement:Slider结束移动响应事件
List-ListView(用到时再学习)
超长列表,允许产生成百上千条的数据
应用场景:类似于背包,不确定有多少数据,任务列表等
Entry:User Widget
Item:数据类型(一般是继承自UObject的数据类型)
ListView大致工作流程:先从服务器或本地获取数据,然后传给Item数据类,再是EntryWidget接收进行实例化显示
需要将List Entries一栏下的Entry Widget Class设置为自己创建的Entry
在Entry中类设置中实现User Object List Entry接口,在事件On List Item Object Set实现对Item数据的显示
一个Item数据对应一个Entry
一个Entry可能对应多个Item(因为Entry是复用的)
类似CheckBox的子类会拦截List的Selection事件
要在Item上记录当前Item是否被选中的状态,再通过Item的状态对应的去改变Item对应的Entry的选中状态,Item存有当前Entry的引用,Entry存有当前Item的引用
List-TileView
使用方式与List View大致相同
Tile Alignment:对齐方式
List-TreeView
使用方式与ListView大致相同
Misc-ExpandableArea
可扩展区域
Header:头部
Body:身体
CircularThrobber
常用在要与服务器建立连接或通讯的等待时刻
Number of Pieces:转圈物体的数量
Period:转圈速度的快慢,越小越快。0停止
可改变转圈物体的图片
Menu Anchor
菜单定位,同一个UI中显示出另外一个模板
MenuClass:选择要加载的模板,默认不显示
需要通过事件触发来显示模板/关闭模板(Button的点击事件)
Native Widget Host
允许UMG中插入纯代码的Slate控件
Primitive-Spacer
间距:给两个控件之间留有可控的间距
UserWidget中获取控件位置信息总结:
GetCachedGeometry:获取控件的位置
GetDesiredSize:获取控件的Size