随笔 - 216  文章 - 0 评论 - 2 阅读 - 24万
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

  1. 蓝图
    通过节点 EnumToString,如下图所示。

  2.  C++
    (1)通过宏
    #define GET_ENUM_DISPLAY_NAME(StaticEnumDefineName, EnumValue)\
        StaticEnum<StaticEnumDefineName>()->GetDisplayNameTextByValue(static_cast<uint8>(EnumValue)).ToString()
    (2)通过函数
    复制代码
    FString AMyActor::ShowEnumDisplayName(EFtSceneObjectType sceneObjectType)
    {
        FString enumDisplayName;
        UEnum* PackageEnum = StaticEnum<EFtSceneObjectType>();
        if (PackageEnum != nullptr) {
            enumDisplayName = PackageEnum->GetDisplayNameTextByValue((int)sceneObjectType).ToString();
        }
        else {
            enumDisplayName = "获取枚举失败:PackageEnum == nullptr";
        }
        return enumDisplayName;
    }
    
    FString AMyActor::ShowEnumDisplayName2(EFtSceneObjectType sceneObjectType)
    {
        FString enumDisplayName;
        UEnum* PackageEnum = FindObject<UEnum>(nullptr, TEXT("/Script/ReflectTest.EFtSceneObjectType"), true);
        if (PackageEnum != nullptr) {
            enumDisplayName = PackageEnum->GetDisplayNameTextByValue((int)sceneObjectType).ToString();
        }
        else {
            enumDisplayName = "获取枚举失败:PackageEnum == nullptr";
        }
        return enumDisplayName;
    }
    复制代码


     

posted on   青叶煮酒  阅读(447)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗
点击右上角即可分享
微信分享提示