#pragma once
#include "CoreMinimal.h"
#include "GameFramework/Actor.h"
#include "TestActors.generated.h"
UCLASS()
class TESTACTOR_API ATestActors : public AActor
{
GENERATED_BODY()
public:
// Sets default values for this actor's properties
ATestActors();
protected:
// Called when the game starts or when spawned
virtual void BeginPlay() override;
public:
// Called every frame
virtual void Tick(float DeltaTime) override;
public:
UPROPERTY(EditAnyWhere, BlueprintReadWrite, Category = "UPROPERTY Test")
bool ShowMsg;
#if WITH_EDITOR
void PostEditChangeProperty(struct FPropertyChangedEvent& PropertyChangedEvent)
{
Super::PostEditChangeProperty(PropertyChangedEvent);
if (PropertyChangedEvent.Property && PropertyChangedEvent.Property->GetFName() == GET_MEMBER_NAME_CHECKED(ATestActors, ShowMsg))
{
//触发的事件
GEngine->AddOnScreenDebugMessage(-1, 2.f, FColor::Cyan, TEXT("Hello World!"));
}
}
#endif
};
UE4 C++ 编辑器模式下属性被修改时触发对应事件
于 2022-03-23 14:37:52 首次发布