UE5

UE C++ Widget Bind

우대비 2023. 7. 6. 10:59
반응형

UWidget Animation Bind

UPROPERTY(BlueprintReadOnly, Category = "BindAnimation", meta = (BindWidgetAnim), Transient)
    UWidgetAnimation* OpenAnim;

UPROPERTY(BlueprintReadOnly, Category = "BindAnimation", meta = (BindWidgetAnim), Transient)
    UWidgetAnimation* CloseAnim;

Blueprint에서 만든 Animation과 같은 이름으로 선언하면 자동으로 Bind 됨

 

void UCheckUI::Open()
{
	if (IsInViewport() && IsValid(OpenAnim)) {
		PlayAnimation(OpenAnim);
	}
}

 

Button

UPROPERTY(BlueprintReadOnly, Category = "BindButton", meta = (BindWidget))
    class UButton* InstallButton;

UPROPERTY(BlueprintReadOnly, Category = "BindButton", meta = (BindWidget))
    class UButton* RepositionButton;

UPROPERTY(BlueprintReadOnly, Category = "BindButton", meta = (BindWidget))
    class UButton* CancelButton;

Blueprint에서 만든 Button과 같은 이름으로 선언하면 자동 Bind됨

 

InstallButton->OnClicked.AddDynamic(this, &UBuildableItemCheckUI::InstallButtonClick);
RepositionButton->OnClicked.AddDynamic(this, &UBuildableItemCheckUI::RepositionButtonClick);
CancelButton->OnClicked.AddDynamic(this, &UBuildableItemCheckUI::CancelButtonClick);

위와같이 버튼 클릭시 함수 실행되게끔 할 수 있음 

버튼에 바인드할 함수 선언시 UFUNCTION()을 꼭 해줘야 정상 작동함

반응형
LIST