汗血盐车网

猿创征文|【C++游戏引擎Easy2D】我拿吃零食的时间,学会了在C++上添加可点击按钮

猿创征文|【C++游戏引擎Easy2D】我拿吃零食的时间,学会了在C++上添加可点击按钮

在这里插入图片描述


iecne


🧛‍♂️iecne个人主页:iecne的猿创C游学习日志
💡每天关注iecne的作品,一起进步
💪学C++必看iecne
本文专栏【C++游戏引擎】.
🐳希望大家多多支持🥰一起进步呀!征文
iecne


✨前言

哈喽大家好,戏引我是拿吃iecne,本期为大家带来的零食是CPP/C++【游戏引擎Easy2D】想要做游戏但不会按钮鼠标控制?十分钟教会你Button按钮类。包教包会,时点击快来看看吧!间学加
引擎支持 Visual Studio 2013 及以上版本,上添如果你使用的按钮是较低版本的 VS,那么你需要考虑一下更新你的猿创C游编译器了

任务描述

如何根据据Button制作鼠标控制按钮类
本实践旨在通过多个代码的案列,让大家理解和掌握如何使用Easy2D引擎来将Button解释并且会运用
在这里插入图片描述


文章目录

  • ✨前言
    • 任务描述
  • Easy2D导读
  • 安装 Easy2D
  • 一.如何使用Button
    • 1.1 精灵转化按钮
      • 1.1.1 使用方式
      • 1.1.2 注意事项
  • 二.不同的征文按钮
    • 2.1 四个种类
    • 2.2 禁用状态
  • 三.实例项目
  • 关于命名
  • ✨总结

Easy2D导读

对于编程而言,初学者最需要的戏引不是技能,而是拿吃成就感。
如果你喜欢用 C/C++ 编写自己的零食小游戏,那么 Easy2D 将是时点击个不错的选择,它大大简化了游戏制作过程,可以帮助你快速开发 Windows 上的 2D 小游戏。
它的特点和它的名字一样,Everything is Easy!


安装 Easy2D

使用简易安装器
运行里面的 install.bat 文件进行安装。
点击此链接进行下载(纯免费,给官方搞成了VIP)
点击下载
安装程序会检测您已经安装的 Visual Studio 版本,并根据您的选择将对应库文件解压至 VS 库目录下。
Easy2D 不支持 VS2012 及以下的版本(包括 VC6.0),如果你使用的是低版本的 VS,那你需要尝试一下新版的 Visual Studio 了。

安装环境:
操作系统:Windows 7 及以上操作系统。
编译环境:Visual Studio 2013 (x86 & x64) 及以上版本。


一.如何使用Button

收藏本文找到更方便

1.1 精灵转化按钮

这类讲述使用方式和注意事项

1.1.1 使用方式

Button 表示一个按钮,你可以把一段文字或者一个精灵变成按钮,它的使用方式很简单
创建一个精灵

auto btnSprite = gcnew Sprite(L"按钮图片.png");

创建点击按钮后的回调函数

auto callback = []() {     // 点击按钮,进入一个新场景    SceneManager::enter(gcnew Scene);};

把精灵变成一个按钮,并设置点击按钮后的回调函数

auto button = gcnew Button(btnSprite, callback);

把按钮加入场景

scene->addChild(button);

1.1.2 注意事项

Warning
把精灵变为按钮后,不需要再将精灵加入到场景中,否则将产生错误。Debug 状态下引擎可以检测这种错误,在错误产生时中断程序,并在控制台中给出提示。


二.不同的按钮

2.1 四个种类

普通的按钮有四个状态:正常、鼠标移入、按下、禁用,你可以设置按钮在四种状态下显示不同的精灵或文本

// 创建一个精灵,按钮普通状态显示auto btnNormal = gcnew Sprite(L"按钮图片.png");// 创建一个精灵,按钮按下状态显示auto btnSelect = gcnew Sprite(L"按下时图片.png");// 创建点击按钮后的回调函数auto callback = []() {     // 点击按钮,进入一个新场景    SceneManager::enter(gcnew Scene);};// 创建按钮auto button = gcnew Button;button->setNormal(btnNormal);button->setSelected(btnSelect);button->setClickFunc(callback);// 把按钮加入场景scene->addChild(button);

2.2 禁用状态

如果你想让一个按钮停止工作,可以把它设为禁用状态

button->setEnable(false);

三.实例项目

作者曾做过一个通讯录,在这里展现一下按钮部分

//通讯录和+符号void TXLPLUS(){ 	//设置通讯录字号	auto TXL_text = gcnew Text(L"通讯录");	//放大1.5倍	TXL_text->setScale(1.2);	// 创建文字样式	auto style = Text::Style();	//设置颜色为黑色	style.color = Color::Black;	Font font = Font(L"黑体", 40, Font::Weight::Bold, true);	// 设置字体	TXL_text->setFont(font);	// 显示在屏幕上	TXL_text->setAnchor(0.5f, 0.5f);	TXL_text->setPos(80, 50);	//应用场景	b_changjing->addChild(TXL_text);	// 创建开始按钮	auto startBtn = gcnew Button;	startBtn->setScale(2.0f, 2.0f);	// 设置按钮图片	startBtn->setNormal(gcnew Sprite(L"res/plus002.png"));	// 设置按钮被选中时的图片	startBtn->setSelected(gcnew Sprite(L"res/plus001.png"));	// 获取鼠标位置	Point mousePos = Input::getMousePos();	//判断	if (mousePos.x >= 530 && mousePos.x <= 521)	{ 		if (mousePos.y >= 30 && mousePos.y <= 51)		{ 			startBtn->setDisabled(gcnew Sprite(L"res/plus003.png"));		}	}	// 设置按钮位置	startBtn->setPos(530,30);	// 添加开始按钮	b_changjing->addChild(startBtn);}//查询通讯录void CHAXUN(){ 	//以这种形式打印变量	//int s = 1000;	//auto test = gcnew Text(FormatString(L"雷数 %d", s));	// 将 Text 添加到场景中	//b_changjing->addChild(test);	// 创建开始按钮	auto startBtn = gcnew Button;	startBtn->setScale(1.0f, 1.0f);	// 设置按钮图片	startBtn->setNormal(gcnew Sprite(L"res/查询001.png"));	// 设置按钮被选中时的图片	startBtn->setSelected(gcnew Sprite(L"res/查询002.png"));	// 获取鼠标位置	Point mousePos = Input::getMousePos();	//

未经允许不得转载:汗血盐车网 » 猿创征文|【C++游戏引擎Easy2D】我拿吃零食的时间,学会了在C++上添加可点击按钮