zoukankan      html  css  js  c++  java
  • CCControlButton的使用

    CCControlButton的使用CCControlButton的使用


    CCSprite* tmp = CCSprite::create("CloseNormal.png");

        CCSize size = tmp->getContentSize();

        CCLog("wh:%f,%f", size.width, size.height);

        tmp->release();

        CCScale9Sprite* backGround =CCScale9Sprite::create("CloseNormal.png");

       CCControlButton*button=CCControlButton::create(backGround);

        button->setPosition(200200);

        

        button->setPreferredSize(CCSizeMake(size.width, size.height));

        this->addChild(button);

        button->addTargetWithActionForControlEvents(this,cccontrol_selector(HelloWorld::menu1Callback),CCControlEventTouchUpInside);

    void HelloWorld::menu1Callback(cocos2d::CCNode *pSender)

    {

        CCControlButton*button=(CCControlButton*)pSender;

        CCLog("%d",button->getTag());//根据tag值判断按钮

        CCLOG("menu1Callback");

    }

    如果button->setPreferredSize(CCSizeMake(size.width*3, size.height*3));就会变成第二张图片 走形了

    疑惑的是 CCScale9Sprite有什么作用 是为了适应button的拉扯 效果还是那么难看!

    解决办法:对CCScale9Sprite进行缩放规划才可以

    CCSprite* tmp = CCSprite::create("CloseNormal.png");

        CCSize size = tmp->getContentSize();

    CCRect fullRect = CCRectMake(0,0, size.width, size.height);

        CCRect insetRect = CCRectMake(2,2,size.width-4, size.height-4);

    CCScale9Sprite* backGround = CCScale9Sprite::create("CloseNormal.png", fullRect, insetRect);

    CCControlButton的使用

  • 相关阅读:
    BackgroundWorker原理剖析
    委托异步调用时BeginInvoke的陷阱处理
    线程静态在对象缓存中的妙用
    值得珍藏的.NET源码,不保存就没机会了
    .NET 4.5.1 参考源码索引
    .NET 4.5 参考源码索引
    .NET 4.0 参考源码索引
    WWF3.5SP1 参考源码索引
    WCF3.5 SP1 参考源码索引
    .NET 3.5.1 参考源码索引
  • 原文地址:https://www.cnblogs.com/jiackyan/p/3019898.html
Copyright © 2011-2022 走看看