#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;
}