1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | #include "HelloWorldScene.h" Scene* HelloWorld::createScene() { auto scene = Scene::create(); auto layer = HelloWorld::create(); scene->addChild(layer); return scene; } bool HelloWorld::init() { if (!Layer::init()) { return false; } auto label_1 = Label::createWithSystemFont("Play", "Thonburi", 50); auto label_2 = Label::createWithSystemFont("High Scores", "Thonburi", 50); auto label_3 = Label::createWithSystemFont("About", "Thonburi", 50); auto item_1 = MenuItemLabel::create(label_1, CC_CALLBACK_1(HelloWorld::menuCallback, this)); auto item_2 = MenuItemLabel::create(label_2, CC_CALLBACK_1(HelloWorld::menuCallback, this)); auto item_3 = MenuItemLabel::create(label_3, CC_CALLBACK_1(HelloWorld::menuCallback, this)); //MenuItemFont가 아닌 MenuItemLabel을 사용할 경우 글씨체와 크기등 상세한 설정이 가능하여 좀더 다양하게 사용 할 수 있다. //auto item_1 = MenuItemFont::create("Play", CC_CALLBACK_1(HelloWorld::menuCallback, this)); //auto item_2 = MenuItemFont::create("High Scores", CC_CALLBACK_1(HelloWorld::menuCallback, this)); //auto item_3 = MenuItemFont::create("About", CC_CALLBACK_1(HelloWorld::menuCallback, this)); auto menu = Menu::create(item_1, item_2, item_3, NULL); menu->alignItemsVertically(); this->addChild(menu); return true; } void HelloWorld::menuCallback(Ref *sender) { CCLOG("menuCallback"); } | cs |
실행 결과