我正在尝试将一个函数绑定到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"));
}
当我在编辑器中播放并单击该对象时,我得不到任何响应。我确保在播放器控制器类中启用了所有鼠标事件和功能。有一次,它正在运作,但后来停止了。编辑器,游戏模式等中是否有其他设置会影响对象的“点击能力”?
答案 0 :(得分:0)
不要在构造函数中绑定它。你没有完全初始化对象,所以它没有意义。覆盖BeginPlay()
方法并在那里调用绑定。