在C++中增加事件调度器(自定义广播)
来源:互联网 发布:淘宝网新店有支持吗 编辑:程序博客网 时间:2024/06/07 20:09
1.新建事件调度器
MyActor.h
#pragma once#include "GameFramework/Actor.h"#include "MyActor.generated.h"DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FDelegate, AActor*, broa);UCLASS()class STORY_API AMyActor : public AActor{ GENERATED_BODY()public: // Sets default values for this actor's properties AMyActor(); // Called when the game starts or when spawned virtual void BeginPlay() override; // Called every frame virtual void Tick( float DeltaSeconds ) override; UPROPERTY(BlueprintAssignable) FDelegate xDelegate;};
MActor.cpp(替换story.h为你的项目或者模块名称)
#include "story.h"#include "MyActor.h"// Sets default valuesAMyActor::AMyActor(){ // Set this actor to call Tick() every frame. You can turn this off to improve performance if you don't need it. PrimaryActorTick.bCanEverTick = true;}// Called when the game starts or when spawnedvoid AMyActor::BeginPlay(){ Super::BeginPlay(); if (GEngine) { GEngine->AddOnScreenDebugMessage(-1, 10, FColor::Green, FString("Actor::BeginPlay broadcast")); } xDelegate.Broadcast(this);}// Called every framevoid AMyActor::Tick( float DeltaTime ){ Super::Tick( DeltaTime );}
2.编译并在关卡中添加Actor后,在蓝图关卡增加事件绑定
3.运行查看效果(执行顺序:关卡蓝图->Actor)
另:无参的事件调度器声明为
DECLARE_DYNAMIC_MULTICAST_DELEGATE(FDelegate2);
0 0
- 在C++中增加事件调度器(自定义广播)
- 怎样在活动中增加自定义事件
- 广播和自定义广播事件
- 自定义广播事件
- 在有序广播中添加自定义权限
- 在自定义控件中注册广播
- 在MySQL中创建事件调度
- 在开发ActiveX控件中增加事件
- 在videoview中增加点击监听事件
- 一、在普通项目中增加定时调度引擎Quartz
- 在miniGUI中增加自定义控件
- 在Openssl中增加自定义算法
- 在类中自定义事件
- cocos2d - JS 自定义事件(广播)
- JQuery easyUi datagrid 中 editor 增加自定义事件(1)
- JQuery easyUi datagrid 中 editor 增加自定义事件(2)
- JQuery easyUi datagrid 中 editor 增加自定义事件(1)
- echars中toolbox工具栏增加自定义按钮与事件
- Triangle
- 【转载】解决闭包的9种方法
- 细则实行
- LeetCode OJ-53.Maximum Subarray(最大连续子数组和)
- 手机与电脑共屏,电脑操作手机屏幕,微信营销功能模块
- 在C++中增加事件调度器(自定义广播)
- (待整理)300. Longest Increasing Subsequence
- Android中活动的生命周期
- 标签背景色计算方法(文字确定,背景色就确定)
- win7装vb
- 【AWS学习笔记】Amazon EC2虚拟主机
- 单例模式的深刻理解及最优法例子
- 二叉树的遍历
- java根据出生日期计算年龄