以上是完整的 UE5 UMG 背包系统 C++ 实现。核心流程: 1. **数据层**:`InventoryComponent` 管理 `TArray`,处理增删改查与合并逻辑 2. **UI层**:`UniformGridPanel` 动态生成 `SlotWidget`,通过委托 `OnInventoryUpdated` 自动刷新 3. **拖拽**:左键检测拖拽 → 创建 `DragDropOperation` 携带源槽位索引 → 目标槽位 `OnDrop` 中执行交换 4. **提示**:`NativeOnMouseEnter` 中设置 Tooltip 文本或绑定自定义 `UTooltipWidget` 在 UMG 编辑器中按照第 7 节的层级结构搭建 Widget Blueprint,将 C++ 类设为父类即可。