UE4学习笔记之 slate UI(一)-- UI的创建

SNew 与SAssignNew 

    就像创建一个新的UObject对象用NewObject() 一样,在Slate中,创建一个新的UI 有SNew 与 SAssignNew 两种方式。

两者的区别:

    SNew返回TSharedPtr;

    SAssignNew 返回TSharedRef.

当我们需要存储一个UI对象的时候,我们要在头文件里声明一个变量记录。例如我们声明一个按钮(SButton)变量:

    TSharedPtr<SButton> TestButton;

在源文件中实例化这个按钮,有两种方式:

    1、 SAssignNew(TestButton,SButton);

    2、TestButton = SNew(SButton);

这个地方有一个注意的地方:在虚幻4引擎中,TSharedRef可以直接转换为TSharedPtr,但是这个转化不是双向的,TSharedPtr转化为TSharedRef需要用到AsShared() 函数;


    

猜你喜欢

转载自blog.csdn.net/weixin_39781267/article/details/80648539