当前位置: 首页 > article >正文

UE4_用户控件_4_Widgets嵌套Widgets构建复杂系统

一、效果展示:

二、创建嵌套控件UMG_NestedWidgets

1、新建用户控件,并更名为UMG_NestedWidgets。

2、拖拽图像到画布面板,调整参数如下:

3、拖拽垂直框到画布面板,调整参数如下:

4、添加滚动框,参数如下图:

5、拖拽文本,参数如下:

6、控件层级结构如下:

7、垂直框中添加4个水平框,之间用间隔区相隔,层级结构如下:

8、第一个水平框中添加文本和文本框参数调整后,样式如下:

9、依次调整其它水平框内容,调整后样式如下:

图层结构如下:

三、创建用于嵌套在UMG_NestedWidgets中滚动框的控件UMG_Entry。

1、新建控件蓝图,更名为UMG_Entry。

2、添加水平框,水平框里面放2个垂直框。

3、第一个垂直框样式如下:

4、第二个垂直框的层级结构及样式如下:

5、对第二个垂直框的所有文本创建绑定函数。

6、创建枚举数据类型Race

7、创建结构数据类型PlayerData_Struct

8、编辑控件蓝图UMG_Entry的事件图表

(1)创建一个PlayerData_Struct类型的变量

(2)分别设置绑定函数

四、编辑UMG_NestedWidgets的事件图表

1、当控件被创建时,我们需要显示鼠标。

2、创建控件蓝图UMG_Entry的对象引用类型的变量

3、创建控件并设置好变量

4、把它添加到UMG_NestedWidgets中的滚动框中

添加到界面上效果如下:

效果不好需要调整。

5、添加一个变量ScrollBox is filled用于判定是否在滚动框中添加了控件蓝图。

6、当添加后设置为真

7、我们需要把playerdata结构体类型数据变成公开,这样就可以在此蓝图实例上进行编辑,随时改变它的值。

注意还得勾选生成时公开,否则的话看不到。

8、UMG_NestedWidgets中这些值需要赋给控件实例的变量playerdata。所以我们需要创建一个playerdata结构体类型的变量。

结构体类型的变量来源于可编辑文本框、滑块和组合框

但你会发现组合框被选择的值为字符串,类型不匹配

那么我们来创建一个枚举型Race变量,根据下拉列表框的值来设置此变量。


 

9、剩下的就是当UMG_NestedWidgets中这些值改变时实时改变。

(1)当文本被修改时调用

(2)当两个滑块的值变更时调用

(3)当下拉列表框已变更选择时调用

10、枚举型Race变量selectedvalue值得设置

运行测试:


五、拓展改进


http://www.kler.cn/a/471158.html

相关文章:

  • 数据库模型全解析:从文档存储到搜索引擎
  • 【工业场景】用YOLOv8实现工业安全帽识别
  • 测试岗位的基础知识
  • stm32week3
  • c#版本、.net版本、visual studio版本之间的对应关系
  • Excel 做数据分析的好与不好
  • VLMs之Agent之CogAgent:CogAgent的简介、安装和使用方法、案例应用之详细攻略
  • Yolov8训练方式以及C#中读取yolov8+onnx模型进行目标检测.NET 6.0
  • 分布式与集群
  • 基于SpringBoot+Vue的考研百科网站
  • UG NX二次开发(C++)-UFun函数-按照特定方向提取轮廓线
  • el-table拖拽表格
  • 吉客云与金蝶云星空数据集成技术详解
  • 20250107在WIN10下使用无线ADB连接Andorid7.1.2
  • vulnhub whowantstobeking靶机
  • C++中,typename
  • 初学stm32 --- 电源监控
  • 数据库6讲
  • 基于GUI网络渗透侦察工具设计与实践
  • PCL 点云多边形面积计算
  • 寒假刷题Day1
  • 大语言模型训练所需的最低显存,联邦大语言模型训练的传输优化技术
  • .NET Core FluentAPI
  • 大模型(LLM) 的长上下文与 RAG:评估与回顾
  • 平安社招 | 平安集团2025年社招笔试平安IQ新胜任力测评个性扫描16PF题库
  • 牛客网刷题 ——C语言初阶(6指针)——字符逆序