Как я могу вызвать переменную С++ внутри плана. Я создал план виджета, и мне нужно отобразить значение переменной в текстовом блоке внутри этого плана. Переменная получена из С++. Является ли это возможным.? Пожалуйста помоги.....
Как вызвать функцию из С++ в схему виджета в Unreal Engine
Ответы (2)
Используйте макрос UPROPERTY, чтобы указать свойства для следующая переменная, которую вы объявляете. В этом случае вы можете использовать Свойство BlueprintReadOnly.
Итак, если ваше объявление переменной выглядит так:
int widgetValue
Вы должны добавить это:
UPROPERTY(BlueprintReadOnly)
int widgetValue
Это сделает переменную доступной для чтения в чертежах, но не позволит вам изменить ее с помощью этих средств.
Вот пример того, как я управляю своими виджетами в Unreal с помощью C++.
Вы хотите создать пользовательский виджет, на котором будут основываться ваши виджеты. Для этого создайте класс C++, наследуемый от UUserWidget:
// Copyright 2014-2016 Blackbriar Softworks, Inc. All Rights Reserved.
#pragma once
#include "Blueprint/UserWidget.h"
#include "XUserWidget.generated.h"
/**
*
*/
UCLASS()
class UNSUNGHEROES_API UXUserWidget : public UUserWidget
{
GENERATED_BODY()
public:
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "XConfiguration")
FString WidgetName;
};
Внутри редактора вы хотите переназначить виджет, который вы хотите иметь доступ к пользовательским свойствам:
Открыть виджет -> Файл -> Родительский виджет -> Имя класса виджета C++
теперь вы можете получить доступ к WidgetName внутри виджета схемы или использовать привязку данных для отображения значений./
Здесь вы предоставляете собственность чертежам:
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "XConfiguration") FString WidgetName;