完成本迷你教程之前,请前往完成以下迷你教程:

·实例甜点 Unreal Engine 4迷你教程之如何用C++将纹理绘制在UserWidget的Image小部件上;

目标:实现UMG中的此功能:

在上一次的迷你教程的LearnWidgets工程上进行(如果你不亲自动手做的话,只关注标有“重要”的部分即可粗略知道要点)。

第1步:在WidgetMng.h中加入此函数

    UFUNCTION()
void LearnImage();
实现是:
void AWidgetMng::LearnImage()
{
UImage* MyImage = Cast<UImage>(SlaveWidget->GetWidgetFromName(TEXT("MyImage")));
if (MyImage)
{
UE_LOG(LogTemp, Warning, TEXT("%s"), *FString("Learning How 2 Use C++ to Change UI"));
MyImage->SetColorAndOpacity(FLinearColor(, , , 0.5));//【本迷你教程的要点】设置image的ColorandOpacity
/*
笔者也尝试过
MyImage->ColorAndOpacity = FLinearColor(1, 0, 0, 0.5);这种方式没有效果;
*/
}
}

第2步:在LearnWidgetsCharacter中Action1的实现改为:

void ALearnWidgetsCharacter::Action1()
{
UE_LOG(LogTemp, Warning, TEXT("%s"), *FString("Action1 ing"));
ALearnWidgetsHUD* HUD = Cast<ALearnWidgetsHUD>(UGameplayStatics::GetPlayerController(this, )->GetHUD());
if (HUD->WidgetMngs.Num())
{
//HUD->WidgetMngs[0]->ChangeImage(HUD->WidgetMngs[0]->T2D);
HUD->WidgetMngs[]->LearnImage();
}
}

第3步:效果是这样的:没有按下Action1是白色块,按下之后变成红色半透明;

——小江村儿的文杰 zouwj5@qq.com 2017年8月3日11:38:53

实例甜点 Unreal Engine 4迷你教程(2)之用C++改变Image小部件的颜色的更多相关文章

  1. 实例甜点 Unreal Engine 4迷你教程(3)之用C++改变Image小部件的其它属性

    完成本迷你教程之前,请前往完成以下迷你教程: ·实例甜点 Unreal Engine 4迷你教程(2)之用C++改变Image小部件的颜色: 在上一次的迷你教程的LearnWidgets工程上进行(如 ...

  2. 实例甜点 Unreal Engine 4迷你教程(4)之用C++实现添加子Widget到VerticalBox中以及ClearChildren

    前置教程: 1. 实例甜点前面的三篇教程: 2. 最好看看笔者前面的一篇关于博文(后记:本来笔者想用C++做DragAndDrop的功能,但是失败了,下面是蓝图实现的方法): http://www.c ...

  3. 实例甜点 Unreal Engine 4迷你教程(6)之三个重要基础操作SpawnActor、TArray的Add和Remove

    本小节的教程需要完成前置教程:建议阅读<实例甜点 Unreal Engine 4迷你教程(5)>,因为5里面提到了本节的工程,不过也可以在不看5的前提下直接阅读本教程. 第一步:Empty ...

  4. 实例甜点 Unreal Engine 4迷你教程(1)之如何用C++将纹理绘制在UserWidget的Image小部件上

    完成本迷你教程之前,请前往完成以下迷你教程: 无前置教程待完成. 本教程适合的人群: 初学者,具有开发经验两周: 本示例的目的:为了在代码中实现UMG中的这个功能: 说明:这是一些列迷你教程的首篇,所 ...

  5. 实例甜点 Unreal Engine 4迷你教程(5)之函数中的静态变量

    本小节的教程无前置教程,可直接学习,篇幅很短. 本教程浓缩起来就是一句话:函数中的静态变量在调试过程中保留值.所以需要谨慎对待. 什么意思?请先不要一步一步对着做,而整体地看一遍下面的过程: 第一步: ...

  6. Unreal Engine 4 系列教程 Part 1:入门

    原文:Unreal Engine 4 Tutorial for Beginners: Getting Started 作者:Tommy Tran 译者:Shuchang Liu 本篇教程将引导你安装U ...

  7. Unreal Engine 4 系列教程 Part 3:材质教程

    .katex { display: block; text-align: center; white-space: nowrap; } .katex-display > .katex > ...

  8. Unreal Engine 4 系列教程 Part 4:UI教程

    .katex { display: block; text-align: center; white-space: nowrap; } .katex-display > .katex > ...

  9. Unreal Engine 4 系列教程 Part 5:制作简单游戏

    .katex { display: block; text-align: center; white-space: nowrap; } .katex-display > .katex > ...

随机推荐

  1. 用HyperMesh(7.0)手工修改网格

    检查网格质量并修改 2D->qulifyindex:其中View/Edit/Optimize工具栏功能常用,尤其是Edit页中的Place Node,可以动态地拖动节点并观察单元质量是否符合要求 ...

  2. spring3: 表达式5.2 SpEL基础

    5.1  概述 5.1.1  概述 Spring表达式语言全称为“Spring Expression Language”,缩写为“SpEL”,类似于Struts2x中使用的OGNL表达式语言,能在运行 ...

  3. 51nod 1154 dp

    http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1154 1154 回文串划分 基准时间限制:1 秒 空间限制:131072 ...

  4. 全局ajax事件

    必须当页面上存在任何ajax请求的时候都将触发这些特定的全局ajax处理函数. 如果在jQuery.ajaxSetup()中的global属性设置成true,那么这些全局函数将会在每一个ajax上面都 ...

  5. ASP.NET MVC性能优化(实际项目中)

    前言 在开发中为了紧赶项目进度而未去关注性能的问题,在项目逐渐稳定下来后发现性能令人感到有点忧伤,于是开始去关注这方面,本篇为记录在开发中遇到的问题并解决,不喜勿喷.注意:以下问题都是在移动端上出现, ...

  6. socket INADDR_ANY

    linux下的socket INADDR_ANY表示的是一个服务器上所有的网卡(服务器可能不止一个网卡)多个本地ip地址都进行绑定端口号,进行侦听. 不光是多个网卡的问题. 见如下server lis ...

  7. Qt之图形(QPainterPath)

    简述 QPainterPath 类(绘图路径)提供了一个容器,用于绘图操作,可以创建和重用图形形状. 绘图路径是由许多图形化的构建块组成的对象,例如:矩形.椭圆.直线和曲线.构建块可以加入在封闭的子路 ...

  8. JAVA并发全景图1.1版本

    感谢微信群"Spring Boot那些事"兄弟们的热心整理和总结

  9. (一)mvc与mvvm设计模式

    前沿:了解设计模式对我们而言,具有很大意义,对语言没有限制,它适用于任何语言,是一种变成思想.设计模式最初有四人帮提出,有兴趣的同学可以去了解下,今天给大家主要分析mvc与mvvm设计模式 一.mvc ...

  10. HohoCoder 1184 : 连通性二·边的双连通分量(+原理证明)

    1184 : 连通性二·边的双连通分量 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 在基本的网络搭建完成后,学校为了方便管理还需要对所有的服务器进行编组,网络所的老师 ...