本文整理汇总了C++中IconButton::SetButtonIndex方法的典型用法代码示例。如果您正苦于以下问题:C++ IconButton::SetButtonIndex方法的具体用法?C++ IconButton::SetButtonIndex怎么用?C++ IconButton::SetButtonIndex使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IconButton
的用法示例。
在下文中一共展示了IconButton::SetButtonIndex方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: addNewSever
void FrontCoverLayer::addNewSever()
{
UILayout* m_layout = UIManager::sharedManager()->getUILayout("SplashLayout");
if(m_severScrollPage)
{
CCLayer* layer = CCLayer::create();
m_severScrollPage->addPage(layer);
int count = m_severList.size();
int currentPage = 0;
int column = 3;
int row = 2;
ASprite *as = AspriteManager::getInstance()->getAsprite(KUI_BIN);
int idx = map_ui_FRAME_SELECTSERVE_BUTTON;
int selectedId = map_ui_FRAME_SELECTSERVE_BUTTON_CLICKED;
float scale = UIManager::sharedManager()->getScaleFactor();
float width = m_severScrollPage->getContentSize().width / scale;
float height = m_severScrollPage->getContentSize().height / scale;
CCRect rect = as->getframeRect(idx);
float deltaWidth = (width - column * rect.size.width )/(column + 1);
float deltaHeigth = (height - row * rect.size.height )/(row + 1);
for(int i =0; i< count; i++)
{
int index = i;
int page = index / (column * row);
int rowIndex = (index - page * column * row) / column;
int columnIndex = (index - page * column * row) % column;
if(page != currentPage)
{
currentPage = page;
CCLayer* newlayer = CCLayer::create();
m_severScrollPage->addPage(newlayer);
}
CCPoint pt;
CCSprite *pEmptyItem = as->getSpriteFromFrame_Middle( idx, 0, pt);
CCSprite *pSelectedItem = as->getSpriteFromFrame_Middle(selectedId ,0,pt);
IconButton * pIcon = new IconButton(pEmptyItem, NULL, pSelectedItem, this,
menu_selector(FrontCoverLayer::onClickedOneSever));
pIcon->autorelease();
pIcon->SetButtonIndex(index);
pIcon->setContentSize(pEmptyItem->getContentSize());
float x = -width * 0.5f + deltaWidth * (columnIndex + 1) + (columnIndex + 0.5f) * rect.size.width ;
float y = height * 0.5f - (rowIndex + 0.5f) * (deltaHeigth + rect.size.height );
pIcon->setPosition(ccp(x, y));
UILabelTTF* label = UILabelTTF::create(m_severList[i]->name,KJLinXin,40,pEmptyItem->getContentSize(),kCCTextAlignmentCenter,kCCVerticalTextAlignmentCenter);
pIcon->addChild(label);
m_lstButton.push_back(pIcon);
CCLayer* currentLayer = m_severScrollPage->getPageLayer(currentPage);
currentLayer->addChild(pIcon,index);
}
}
}
示例2: addCityBtn
void CityListLayer::addCityBtn(int index)
{
//获得城市按钮位置
stringstream nameStream;
nameStream << "cityBtn" << index;
string cityBtnName = nameStream.str();
UIButton *btn = cityListLayout->FindChildObjectByName<UIButton>(cityBtnName);
CCPoint cityPoint = btn->getPosition();
//初始化各种位置信息
CCSize visibleSize = CCDirector::sharedDirector()->getVisibleSize();
cityInfoList[index - 1].cityPos = ccpAdd(ccp(visibleSize.width / 2, visibleSize.height / 2), cityPoint);
cityInfoList[index - 1].playerPos = ccpAdd(cityInfoList[index - 1].cityPos, ccp(0, -25));
cityInfoList[index - 1].namePos = ccpAdd(cityInfoList[index - 1].cityPos, ccp(0, -30));
//获得城市图标资源
CCPoint pt;
ASprite * as = AspriteManager::getInstance()->getAsprite(KICON_BIN);
stringstream resourceNameStream;
resourceNameStream << "map_ui_system_icon_FRAME_ICON_CITY" << index;
string cityResourceName = resourceNameStream.str();
int cityResourceId = getResourceIDByName(cityResourceName.c_str());
CCSprite* cityIcon = as->getSpriteFromFrame_Middle(cityResourceId, 0, pt);
CCSprite* citySelectIcon = as->getSpriteFromFrame_Middle(cityResourceId, 0, pt);
citySelectIcon->setScale(1.2f);
//创建城市图标
IconButton * cityBtn = new IconButton(cityIcon, NULL, citySelectIcon, this,
menu_selector(CityListLayer::onPressCityBtn));
cityBtn->setPosition(cityInfoList[index - 1].cityPos);
cityBtn->SetButtonIndex(index);
cityBtn->setAnchorPoint(ccp(0.5, 0.5));
this->addChild(cityBtn);
//创建城市名称label
float fontSize = GameFontManager::smallFontSize();
CCSize nameLabelSize = CCSizeMake(200 / CC_CONTENT_SCALE_FACTOR(), fontSize);
string cityName = MainLandManager::Get()->getCityName(cityInfoList[index - 1].cityId);
UILabelTTF * cityNameLabel = UILabelTTF::create(cityName.c_str(), KJLinXin, fontSize,
nameLabelSize, kCCTextAlignmentCenter,kCCVerticalTextAlignmentBottom);
cityNameLabel->setPosition(cityInfoList[index - 1].namePos);
this->addChild(cityNameLabel);
}
示例3: addOneEmptyPage
void UIScrollPage::addOneEmptyPage(int pageIndex)
{
CCLayer* layer = CCLayer::create();
layer->setAnchorPoint(ccp(0, 0));
{
int deltaX, deltaY;
if(m_cellBinFile == "")
{
m_cellBinFile = KUI_BIN;
}
ASprite *as = AspriteManager::getInstance()->getAsprite(m_cellBinFile);
int idx = getResourceIDByName(m_cellAsfile.c_str());
int selectedId = getResourceIDByName(m_cellSelectedAsfile.c_str());
CCSize buttonSize = as->getframeRect(idx).size;
// float contentScale = CCDirector::sharedDirector()->getContentScaleFactor();
// buttonSize = CCSizeMake(buttonSize.width * contentScale, buttonSize.height * contentScale);
if (m_icolumn <= 1)
deltaX = 0;
else
deltaX = (getContentSize().width - 2 * m_celloffsetX - buttonSize.width) / (m_icolumn - 1);
if (m_irow <= 1)
deltaY = 0;
else
deltaY = (getContentSize().height - 2 * m_celloffsetY - buttonSize.height) / (m_irow - 1);
/////////////////////////////////////////////////////////////////////////////
// row
// row
for(int r = 0; r < (int)m_irow; r++)
{
for(int l = 0; l < (int) m_icolumn; l++)
{
// clone one ccsprite
CCPoint pt;
CCSprite *pEmptyItem = as->getSpriteFromFrame_Middle( idx, 0, pt);
CCSprite *pSelectedItem = as->getSpriteFromFrame_Middle(selectedId ,0,pt);
IconButton * pIcon = new IconButton(pEmptyItem, NULL, pSelectedItem, this,
menu_selector(UIScrollPage::OnItemClicked));
pIcon->autorelease();
int index = pageIndex * m_icolumn * m_irow;
index += r * m_icolumn + l;
pIcon->SetButtonIndex(index+1);
pIcon->setContentSize(pEmptyItem->getContentSize());
if(m_itemType != 0)
{
pIcon->creatDragReceiver((DragHandlerType)m_itemType);
}
pIcon->SetDoubleClickHandler(this,menu_selector(UIScrollPage::OnItemDoubleClicked));
pIcon->SetTappedHandler(this,menu_selector(UIScrollPage::OnTapped),menu_selector(UIScrollPage::OnTapCancel));
pIcon->SetDragFlagTime(150);
m_lstButton.push_back(pIcon);
int x = l * deltaX + m_celloffsetX + buttonSize.width / 2 - getContentSize().width / 2 ;
int y = getContentSize().height / 2 - (r * deltaY + m_celloffsetY + buttonSize.height / 2);
// x /= contentScale;
// y /= contentScale;
pIcon->setPosition(ccp(x, y));
char name[50];
sprintf(name,"%s_%d",this->m_strName.c_str(),index+1);
pIcon->SetButtonName(name);
layer->addChild(pIcon);
}
}
}
addPage(layer);
}