头文件库的引入:
#include "cocos2d.h"
USING_NS_CC;
#include "cocos-ext.h"
USING_NS_CC_EXT;
头文件定义一个变量:
private:
UILoadingBar* loadingbar;
在CPP里面导入头文件:
#include "CocoGUILIB/System/CocosGUI.h"
在init里面:
CCMenuItemImage *pCloseItem = CCMenuItemImage::create(
"CloseNormal.png",
"CloseSelected.png",
this,
menu_selector(HelloWorld::menuCloseCallback));
CC_BREAK_IF(! pCloseItem);
pCloseItem->setPosition(ccp(CCDirector::sharedDirector()->getWinSize().width - 20, 20));
CCMenu* pMenu = CCMenu::create(pCloseItem, NULL);
pMenu->setPosition(CCPointZero);
CC_BREAK_IF(! pMenu);
this->addChild(pMenu, 1);
UILayer* ul = UILayer::create();
ul->setContentSize(ccp(480,320));
ul->scheduleUpdate();
this->addChild(ul,100,100);
UIButton* ub = UIButton::create();
ub->setTouchEnable(true);
ub->setPosition(ccp(100,220));
ub->setTextures("bn.png","bp.png","bn.png");
ub->setName("button");
ub->setScale9Enable(true);
ub->setScale9Size(CCSizeMake(160,80));
ub->setCapInsets(CCRectZero);
ub->addReleaseEvent(this,coco_releaseselector(HelloWorld::buttonPress));
ul->addWidget(ub);
UITextButton* utb = UITextButton::create();
utb->setPosition(ccp(230,220));
utb->setTextures("bn.png","bp.png","bn.png");
utb->setText("Button");
utb->setFontName("黑体");
utb->setTouchEnable(true);
utb->setName("UITextButton");
utb->setFontSize(20);
utb->addReleaseEvent(this,coco_releaseselector(HelloWorld::buttonPress));
ul->addWidget(utb);
//背景 背景被选中 勾选 背景不可用 够不可用
UICheckBox* ucb =UICheckBox::create();
ucb->setTextures("0.png","2.png","9.png","4.png","5.png");
ucb->setSelectedState(true);
/**
WidgetStateNone = -1,
WidgetStateNormal,
WidgetStateSelected,
WidgetStateDisabled
**/
ucb->setPressState(WidgetStateDisabled);
ucb->setPosition(ccp(324,220));
ucb->setName("checkbox");
ucb->setTouchEnable(true);
ucb->addSelectEvent(this,coco_selectselector(HelloWorld::buttonPress));
ucb->addUnSelectEvent(this,coco_selectselector(HelloWorld::buttonPress));
ul->addWidget(ucb);
UIImageView* uiv = UIImageView::create();
uiv->setTexture("ccicon.png");
uiv->setPosition(ccp(400,220));
uiv->setName("imageview");
ul->addWidget(uiv);
UILabel* ulb = UILabel::create();
ulb->setPosition(ccp(72,100));
ulb->setText("UILABEL");
ulb->setFontName("黑体");
ulb->setFontSize(24);
ul->addWidget(ulb);
UITextField* utf = UITextField::create();
utf->setPosition(ccp(250,100));
utf->setText("UITextField");
utf->setFontName("黑体");
utf->setFontSize(24);
utf->setPlaceHolder("FUCK YOU");
utf->setMaxLength(15);
utf->setMaxLengthEnable(true);
utf->setTouchEnable(true);
ul->addWidget(utf);
UITextArea* uta = UITextArea::create();
uta->setPosition(ccp(450,100));
uta->setTextAreaSize(CCSizeMake(200,100));
uta->setTextColor(255,225,0);
/************************************************************************/
/* kCCTextAlignmentLeft,
kCCTextAlignmentCenter,
kCCTextAlignmentRight, */
/************************************************************************/
uta->setTextHorizontalAlignment(kCCTextAlignmentLeft);
/************************************************************************/
/* kCCVerticalTextAlignmentTop,
kCCVerticalTextAlignmentCenter,
kCCVerticalTextAlignmentBottom, */
/************************************************************************/
uta->setTextVerticalAlignment(kCCVerticalTextAlignmentTop);
uta->setText("UIText\nArea");
uta->setFontSize(24);
uta->setFontName("黑体");
//uta->set
ul->addWidget(uta);
UILabelAtlas* ula = UILabelAtlas::create();
ula->setPosition(ccp(50,50));
ula->setProperty("074084","labelatlas.png",17,22,"0");
ul->addWidget(ula);
UILoadingBar* ulba = UILoadingBar::create();
ulba->setTexture("loadingbar.png");
ulba->setPosition(ccp(250,50));
//设置朝向
/************************************************************************/
/* LoadingBarTypeLeft,
LoadingBarTypeRight */
/************************************************************************/
ulba->setDirection(LoadingBarTypeLeft);
ulba->setPercent(90);
ul->addWidget(ulba);
loadingbar = ulba;
UISlider* usd = UISlider::create();
//usd->setBarTextureScale9Enable(true);
usd->setBarTexture("slidbar.png");
//usd->setScale9Size(CCSizeMake(160,80));
//usd->setCapInsets(CCRectZero);
//usd->setBarLength()
usd->setSlidBallTextures("s1.png","s2.png","CloseSelected.png");
usd->setPosition(ccp(250,30));
usd->setTouchEnable(true);
usd->addPercentChangedEvent(this,coco_pushselector(HelloWorld::buttonPress));
ul->addWidget(usd);
回调函数:
void HelloWorld::buttonPress(CCObject* object)
{
UIButton* button = dynamic_cast<UIButton*>(object);
if (button)
{
CCLog("name=%s",button->getName());
}
UICheckBox* checkbox = dynamic_cast<UICheckBox*>(object);
if (checkbox)
{
CCLog("ischeck=%d",checkbox->getSelectedState());
}
UISlider* slider = dynamic_cast<UISlider*>(object);
if (slider)
{
UILayer* uilayer = dynamic_cast<UILayer*>(this->getChildByTag(100));
if (uilayer)
{
if (slider&&loadingbar)
{
int p = slider->getPercent();
loadingbar->setPercent(p);
}
}
}
}