Cocos2d-x:按钮(Button)

推荐:将NSDT场景编辑器加入你的3D工具链

3D工具集:NSDT简石数字孪生

按钮(Button)

按钮是什么,好像没有必要解释,我们都知道这东西是用来点击的,点击后使我们的游戏产生一些变化,比如更改了场景,触发了动作等等。按钮会拦截点击事件,事件触发时调用事先定义好的回调函数。按钮有一个正常状态,一个选择状态,还有一个不可点击状态,按钮的外观可以根据这三个状态而改变。Cocos2d-x 提供 Button 对象支持按钮功能,创建一个按钮并定义一个回调函数很简单,记得在操作的时候要有头文件包含: #include "ui/CocosGUI.h"


auto button = Button::create("normal_image.png", "selected_image.png", "disabled_image.png");

button->setTitleText("Button Text");

button->addTouchEventListener([&](Ref* sender, Widget::TouchEventType type){
        switch (type)
        {
                case ui::Widget::TouchEventType::BEGAN:
                        break;
                case ui::Widget::TouchEventType::ENDED:
                        std::cout << "Button 1 clicked" << std::endl;
                        break;
                default:
                        break;
        }
});

this->addChild(button);

可以看到,我们为按钮的每个状态都指定了一个 .png 图像:

在屏幕显示的时候,同一个时刻只能看到一个状态,正常显示状态像这样:

3D建模学习工作室 翻译整理,转载请注明出处!

上一篇:Cocos2d-x:菜单(Menu) (mvrlink.com)

下一篇:Cocos2d-x:复选框(CheckBox) (mvrlink.com)

NSDT场景编辑器 | NSDT 数字孪生 | GLTF在线编辑器 | 3D模型在线转换 | UnrealSynth虚幻合成数据生成器 | 3D模型自动纹理化工具
2023 power by nsdt©鄂ICP备2023000829号