为什么我没有得到OnClicked函数的响应?

时间:2017-06-19 01:04:00

标签: c++ unreal-engine4

我正在尝试将一个函数绑定到onclicked:

OnClicked.AddDynamic(this, &AChessPiece::OnClick); // <- In AChessPiece's constructor

我在ChessPiece.h中声明了OnClick

UFUNCTION()
void OnClick(AActor* TouchedActor, FKey ButtonPressed);

在ChessPiece.cpp中定义它

void AChessPiece::OnClick(AActor* TouchedActor, FKey ButtonPressed)
{
    UE_LOG(LogTemp, Warning, TEXT("Clicked"));
}

当我在编辑器中播放并单击该对象时,我得不到任何响应。我确保在播放器控制器类中启用了所有鼠标事件和功能。有一次,它正在运作,但后来停止了。编辑器,游戏模式等中是否有其他设置会影响对象的“点击能力”?

1 个答案:

答案 0 :(得分:0)

不要在构造函数中绑定它。你没有完全初始化对象,所以它没有意义。覆盖BeginPlay()方法并在那里调用绑定。