cocos2dx 第四课 控件与场景

本文介绍了使用cocos2dx游戏引擎在Visual Studio中创建项目,并在HelloWorldScene.cpp的初始化函数中加载精灵图片、文本和按钮的步骤。针对中文显示乱码的问题,提供了解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在HelloWorldScene.cpp文件中初始化函数bool HelloWorld::init()内加载精灵图片,文本,按钮.

一.精灵图片-Sprite

	Size size = Director::getInstance()->getVisibleSize();//获取窗口大小
	auto logoSp = Sprite::create("res\\HelloWorld.png");//用Sprite的create方法加载图片
	logoSp->setPosition(size.width / 2, size.height / 2);//设置图片位于层的位置
	this->addChild(logoSp);//将图片精灵添加到层

二.文本-Label

	//在场景内添加文字
	std::string st = "这是一个添\n加文字的示例";
	auto lab1 = Label::create();//创建
	this->addChild(lab1);//添加
	lab1->setString(st);//字体内容
	lab1->setPosition(500, 500);//位置
	lab1->setSystemFontSize(88);//字号
	lab1->setColor(Color3B(255, 255, 0));//颜色

注:中文显示乱码的解决办法

在文件中加入

#pragma once
#pragma execution_character_set("utf-8")	

三.按钮-Button

Size size = Director::getInstance()->getVisibleSize();	//获取窗口大小
	auto btn1 = cocos2d::ui::Button::create("btn.png", "btn.png", "btn.png");//按钮三种状态的图片
	this->addChild(btn1);//添加按钮到层
	btn1->setEnabled(true);//设置按钮是否可以点击
	btn1->setPosition(Vec2(size.width / 2, 300));//设置按钮位置
	btn1->setScale(0.1f);//设置按钮缩放比例
	//按钮回调事件(四种状态)
	btn1->addTouchEventListener([&](Ref*sender, cocos2d::ui::Widget::TouchEventType type)
	{
		switch (type)
		{
		case cocos2d::ui::Widget::TouchEventType::BEGAN:
			CCLOG("1--BEGAN");
			break;
		case cocos2d::ui::Widget::TouchEventType::ENDED:
			CCLOG("2--ENDED");
			break;
		case cocos2d::ui::Widget::TouchEventType::CANCELED:
			CCLOG("3--CANCELED");
			break;
		case cocos2d::ui::Widget::TouchEventType::MOVED:
			CCLOG("4--MOVED");
			break;
		default:
			break;
		}
	});

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值