首页 > 编程语言 >UE中UPROPERTY的用法(UEC++个人学习笔记)

UE中UPROPERTY的用法(UEC++个人学习笔记)

时间:2024-04-09 12:31:26浏览次数:19  
标签:int32 UPROPERTY BlueprintReadWrite EditAnywhere C++ meta UE 默认设置

UPROPERTY

设置可视

//仅在类默认设置可见(即里面面板)
	UPROPERTY(VisibleDefaultsOnly)
		int32 VisibleDefaultsOnlyInt;

	//仅在实例化细节面板可见(即外面面板)
	UPROPERTY(VisibleInstanceOnly)
		FString VisibleInstancestring;
	
	//类默认设置和实例化细节面板都可见
	UPROPERTY(VisibleAnywhere)
		FVector VisibleAnywhereVector;

在类的设置里面会显示,但是无法编辑

设置可编辑

//仅在类默认设置里面编辑
	UPROPERTY(EditDefaultsOnly)
		int32 EditDefaultOnlyInt;

	//仅在实例化细节面板编辑
	UPROPERTY(EditInstanceOnly)
		FString EditInstanceOnlyString;

	//仅在类默认设置和实例化都可以编辑
	UPROPERTY(EditAnywhere)
		FVector EditAnywhereVector;

在类的设置里面会显示,可以自行修改里面数值

创建变量还有子目录

//仅仅在蓝图可读
	UPROPERTY(EditAnywhere, BlueprintReadOnly)
		int32 BlueprintReadOnlyInt;
	
	//在蓝图中可读可写即可以获取和设置变量
	UPROPERTY(EditAnywhere, BlueprintReadWrite)
		int32 BlueprintReadWriteInt;
	   
	//Category目录,创建Vaule1变量(在蓝图中可以获取和设置)
	UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "MyIntValue")
		int32 Value1;

	//这样的写代表MySubIntValue是MyIntValue的子目录
	UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "MyIntValue|MySubIntValue")
		int32 Value2;

在蓝图中也可编辑

使用meta元数据(起别名)

//meta元数据说明符
	//DisPlayName别名,将Value3的名字替换成MyValue3DisplayName
	UPROPERTY(EditAnywhere, BlueprintReadWrite, meta = (DisplayName="MyValue3DisplayName"))
		int32 MyValue3;

在蓝图上搜索

EditCondition条件控制器

//只有当Controller的布尔值为true的时候才能修改isController(即Value3的值)
	//EditCondition可以用于控制另一个变量
	UPROPERTY(EditAnywhere, BlueprintReadWrite, meta = (DisplayName = "Controller"))
		bool isController;
	UPROPERTY(EditAnywhere, BlueprintReadWrite, meta = (EditCondition = "isController"))
		float Value3;

 这样会使得只能当controller打勾的时候才能编辑value3

Tooltip可以使得当鼠标移动到名字上的时候显示提示

//Tooltip就是在isTrue的变量的提示
	UPROPERTY(EditAnywhere, BlueprintReadWrite, meta = (ToolTip = "isControllerTrue"))
		bool isTrue;

 如图

笔记总结来源于:【【虚幻5】UE5C++零基础全网全流程开发从入门到进阶教程合集(持续跟新中)】https://www.bilibili.com/video/BV1Dc411f7nx?vd_source=90cb1ac44856e5e826e2bee8aa9d8a41

标签:int32,UPROPERTY,BlueprintReadWrite,EditAnywhere,C++,meta,UE,默认设置
From: https://blog.csdn.net/weixin_65376163/article/details/137545762

相关文章

  • 基于SpringBoot+Vue+uniapp微信小程序的高校教师成果管理小程序的详细设计和实现(源码
    文章目录前言项目运行截图技术框架后端采用SpringBoot框架前端框架Vue可行性分析系统测试系统测试的目的系统功能测试数据库表设计代码参考数据库脚本为什么选择我?获取源码前言......
  • vue3 快速入门系列 —— vue3 路由
    vue3快速入门系列-vue3路由在vue3基础上加入路由。vue3需要使用vue-routerV4,相对于v3,大部分的VueRouterAPI都没有变化。Tip:不了解路由的同学可以看一下笔者之前的文章:vue2路由参考:vue2路由官网、vue3路由官网vue-routerV4在VueRouterAPI从v3(Vue2)到v4......
  • LeetCode 1944. Number of Visible People in a Queue
    原题链接在这里:https://leetcode.com/problems/number-of-visible-people-in-a-queue/description/题目:Thereare n peoplestandinginaqueue,andtheynumberedfrom 0 to n-1 in lefttoright order.Youaregivenanarray heights of distinct integers......
  • C++使用getline实现split的效果
    0.问题C++中并没有类似split的分隔符函数,如何自建一个呢?我们考虑使用getline来实现所需功能。1.代码#include<iostream>#include<string>#include<vector>#include<sstream>//使用字符串流将字符串分割成多个子串,并存储到vector中std::vector<std::string>split......
  • VUE - bigint解决前端精度丢失的问题
    VUE-bigint解决前端精度丢失的问题问题描述java后端long类型的范围-2^63~2^63,即:-9223372036854775808~9223372036854775807,它是19位的。这个数字可以通过方法获得:Long.MAX_VALUE、Long_MIN_VALUE。前端JS的数字类型的范围-2^53~2^53,即:-9007199254740991~900719925......
  • 基于Java+SpringBoot+Vue前后端分离大学生校园兼职求职招聘信息系统(适合毕业设计项目
    文章目录目录前言一、系统设计1、系统运行环境2.系统架构设计二、系统核心技术三.系统功能实现四.实现代码五.源码获取前言 本文旨在探讨并设计一个基于Springboot框架的大学生校园兼职求职招聘信息系统。该系统的设计与实现,旨在满足大学生寻找兼职工作的......
  • CEF编译报错:ValueError: path is on mount '\\\\tab_group_types.mojom-webui.js'
    F:\code\chromium_git\chromium\src>autoninja-Cout\Debug_GN_x64cef"f:\code\depot_tools\bootstrap-2@3_11_6_chromium_30_bin\python3\bin\python3.exe"F:\code\depot_tools\ninja.py-Cout\Debug_GN_x64cef-j10ninja:Enteringdirec......
  • Vue中实现输入框的自动补全功能
    一、百度文心一言的结果在Vue中实现输入框的自动补全功能,可以使用原生的input事件监听用户的输入,并通过计算属性或方法来提供匹配的自动补全建议。以下是一个简单的例子:<template><div><inputtype="text"v-model="userInput"@input="updateSuggestions"><ulv-......
  • C++ Note 继承指向
    引自:https://blog.csdn.net/baidu_35679960/article/details/80812527引自:https://blog.csdn.net/qq_21989927/article/details/111226696引自:https://www.runoob.com/cplusplus/cpp-polymorphism.html 为什么父类指针可以指向子类实例:可以通俗的理解,子类可能含有一些父类没......
  • 为什么C++中不能将数组的内容拷贝给其他数组作为初始值,也不能用数组给其他数组赋值
    0前言来自primer的3.5部分以下写法是有问题的inta[]={0,1,2}inta2[]=a;//错误,不允许使用一个数组初始化另一个数组a2=a;//错误:不能把一个数组赋值给另一个数组有些编译器支持上面的操作,但是书上说这属于非标准功能,是编译器扩展1原因C++中的数组......