【UE5】 ListView使用DataTable数据的蓝图方法

【UE5】 ListView使用DataTable数据的蓝图方法

ListView 是虚幻引擎中的一种用户界面控件,用于显示可滚动的列表。它可以用于显示大量的数据,并提供了各种功能和自定义选项来满足不同的需求。

DataTable是虚幻引擎中的一种数据表格结构,用于存储和管理复杂的数据。它可以被用于保存游戏中的角色属性、物品信息、关卡数据等等。
这里介绍,如何使用蓝图通过ListView读取DataTable里的属性内容。

1.DataTable的创建
  1. 创建结构体

创建结构体,用于定义DataTable的字段

在内容的空白处右击鼠标,选择Blueprints→Structure,命名后(这里命名为MyData)可以定义字段,这里的字段就是DataTable数据表的字段

  1. 创建DataTable

同样在空白处右击鼠标,选择Miscellaneous→DataTable,后会出现PickRowStructure窗口,让我们选择一个结构体,我们选择上面创建的结构体对应的名称

将数据表命名(这里命名为MyDataTable),到这里就可以看见创建的数据表里的字段是,我们之前定义的结构体

3)数据导入

建立一个csv表,将表头的命名对应为结构体的字段

csv的第一列必须为数字排序列。不能为结构体的字段名称,否则会丢失(如果中文出乱码,将csv的编码格式改为UTF-8)

同样,也可以将空的数据表导出为csv

对该CSV表重新编辑后重新导入

修改DataTableDetails的SourceFile路径可以改变导入表的地址

2.ListView的创建

1)创建UI控件

2)建立ListView

如下图拖入控件,提示需要创建Entry

Entry是列表是每一行的子UI蓝图。选中ListView,在Details窗口下,找到ListEntries,点击EntryWidgetClass的加号创建Entry或者选择已经创建的Entry

  1. 建立Entry

创建后可以看见ListView的显示正常

3.DataTable数据绑定

1)建立数据蓝图类

当给Entry赋值时,需要建立保存一行DataTable数据的蓝图类,既ltem

选择BuleprintClass

选择Object(命名为MyDataInfo)

创建可以与DataTable表里字段对应的变量

创建的变量勾选 instanceEditable(可编辑实例)和ExposeOnSpawn(生成时公开)用于蓝图赋值

2)创建Entry的赋值函数

新建函数命名为(UpdateData)

添加输入节点,类型为上文创建的数据蓝图类(MyDataInfo)

3)初始化ListView

选中ListView,在Details中的Events中添加OnEntryInitialized

4)将数据表绑定到ListView并创建行

相关推荐
AA陈超2 小时前
虚幻引擎UE5专用服务器游戏开发-20 添加基础能力类与连招能力
c++·游戏·ue5·游戏引擎·虚幻
平行云9 小时前
如何实现UE程序大并发多集群的像素流部署
unity·ue5·图形渲染
我的巨剑能轻松搅动潮汐10 小时前
UE5 C++ 下载视频到本地。//BindLambda用法解析
ue5
不爱说话的采儿2 天前
UE5详细保姆教程(第四章)
笔记·ue5·游戏引擎·课程设计
二DUAN帝2 天前
UE实现路径回放、自动驾驶功能简记
人工智能·websocket·机器学习·ue5·自动驾驶·ue4·cesiumforue
温玉琳琅2 天前
【UE5】虚幻引擎小百科
ue5·游戏引擎·虚幻
远离UE43 天前
UE 材质 变体 概念
ue5·材质
吴梓穆5 天前
UE5 重新编译插件版本
ue5
HECUgauss5 天前
UE5 使用过程遇到的问题
ue5
小白学过的代码5 天前
ue5.4和webul通信
开发语言·javascript·ue5