青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

專職C++

不能停止的腳步

  C++博客 :: 首頁 :: 聯系 :: 聚合  :: 管理
  163 Posts :: 7 Stories :: 135 Comments :: 0 Trackbacks

常用鏈接

留言簿(28)

我參與的團隊

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

(基于cocos2dx2.2.2)cocos2dx的按鈕類定義在extensions\GUI\CCControlExtension\CCControlButton.h
在需要用的時候,包括就可以了。
我們在相應的申明的地方,包含下面三個頭文件

#include "GUI/CCControlExtension/CCControlButton.h"
#include "GUI/CCControlExtension/CCScale9Sprite.h"
#include "GUI/CCControlExtension/CCControl.h"
然按鈕的事件有如下定義
enum 
{
    CCControlEventTouchDown           = 1 << 0,    // A touch-down event in the control.
    CCControlEventTouchDragInside     = 1 << 1,    // An event where a finger is dragged inside the bounds of the control.
    CCControlEventTouchDragOutside    = 1 << 2,    // An event where a finger is dragged just outside the bounds of the control. 
    CCControlEventTouchDragEnter      = 1 << 3,    // An event where a finger is dragged into the bounds of the control.
    CCControlEventTouchDragExit       = 1 << 4,    // An event where a finger is dragged from within a control to outside its bounds.
    CCControlEventTouchUpInside       = 1 << 5,    // A touch-up event in the control where the finger is inside the bounds of the control. 
    CCControlEventTouchUpOutside      = 1 << 6,    // A touch-up event in the control where the finger is outside the bounds of the control.
    CCControlEventTouchCancel         = 1 << 7,    // A system event canceling the current touches for the control.
    CCControlEventValueChanged        = 1 << 8      // A touch dragging or otherwise manipulating a control, causing it to emit a series of different values.
};
事件原型定義:typedef void (CCObject::*SEL_CCControlHandler)(CCObject*, CCControlEvent); 并用宏cccontrol_selector定義了 #define cccontrol_selector(_SELECTOR) (SEL_CCControlHandler)(&_SELECTOR) 事件的兩個參數分別的產生事件的對象,具體的事件,這是一個無符號32位整數,事件值就是CCControlEventTouchDown等定義的值。
在這里,定義了事件函數    void OnTouchDown(CCObject* pSender, extension::CCControlEvent event);
    void OnTouchDragEnter(CCObject* pSender, extension::CCControlEvent event);
    void OnTouchDragExit(CCObject* pSender, extension::CCControlEvent event);
    void OnTouchDragInside(CCObject* pSender, extension::CCControlEvent event);
    void OnTouchDragOutside(CCObject* pSender, extension::CCControlEvent event);
    void OnTouchUpInside(CCObject* pSender, extension::CCControlEvent event);
    void OnTouchUpOutside(CCObject* pSender, extension::CCControlEvent event);
    void OnTouchCancel(CCObject* pSender, extension::CCControlEvent event);
具體事件實現如下

void HelloWorld::OnTouchDown(CCObject* pSender, extension::CCControlEvent event)
{
    PrintLog("OnTouchDown:%u", event);
}

void HelloWorld::OnTouchDragEnter(CCObject* pSender, extension::CCControlEvent event)
{
    PrintLog("OnTouchDragEnter:%u", event);

}

void HelloWorld::OnTouchDragExit(CCObject* pSender, extension::CCControlEvent event)
{
    PrintLog("OnTouchDragExit:%u", event);

}

void HelloWorld::OnTouchDragInside(CCObject* pSender, extension::CCControlEvent event)
{
    PrintLog("OnTouchDragInside:%u", event);
}

void HelloWorld::OnTouchDragOutside(CCObject* pSender, extension::CCControlEvent event)
{
    PrintLog("OnTouchDragOutside:%u", event);
}

void HelloWorld::OnTouchUpInside(CCObject* pSender, extension::CCControlEvent event)
{
    PrintLog("OnTouchUpInside:%u", event);
}

void HelloWorld::OnTouchUpOutside(CCObject* pSender, extension::CCControlEvent event)
{
    PrintLog("OnTouchUpOutside:%u", event);
}

void HelloWorld::OnTouchCancel(CCObject* pSender, extension::CCControlEvent event)
{
    PrintLog("OnTouchCancel:%u", event);
}
然后定義一個按鈕,在init中實現 

            {
                extension::CCScale9Sprite * pBtnNormal = extension::CCScale9Sprite::create("up.png");
                extension::CCScale9Sprite * pBtnDown = extension::CCScale9Sprite::create("up.png");
                CCLabelTTF * pBtnCaption = CCLabelTTF::create("", "宋體", 30);
                extension::CCControlButton * pBtn = extension::CCControlButton::create(pBtnCaption, pBtnNormal);
                pBtn->setBackgroundSpriteForState(pBtnDown, extension::CCControlStateSelected);
                pBtn->setPosition(GetPosition(pPlayerLayer, "UpPoint"));
                pBtn->setAnchorPoint(CCPointZero);
                pBtn->setPreferredSize(CCSizeMake(32, 32));
                pBtn->setTag(100);
                this->addChild(pBtn);

                pBtn->addTargetWithActionForControlEvents(this,    cccontrol_selector(HelloWorld::OnTouchDown), CCControlEventTouchDown);
                pBtn->addTargetWithActionForControlEvents(this, cccontrol_selector(HelloWorld::OnTouchDragEnter), CCControlEventTouchDragEnter);
                pBtn->addTargetWithActionForControlEvents(this, cccontrol_selector(HelloWorld::OnTouchDragExit), CCControlEventTouchDragExit);
                pBtn->addTargetWithActionForControlEvents(this, cccontrol_selector(HelloWorld::OnTouchDragInside), CCControlEventTouchDragInside);
                pBtn->addTargetWithActionForControlEvents(this, cccontrol_selector(HelloWorld::OnTouchDragOutside), CCControlEventTouchDragOutside);
                pBtn->addTargetWithActionForControlEvents(this, cccontrol_selector(HelloWorld::OnTouchUpInside), CCControlEventTouchUpInside);
                pBtn->addTargetWithActionForControlEvents(this, cccontrol_selector(HelloWorld::OnTouchUpOutside), CCControlEventTouchUpOutside);
                pBtn->addTargetWithActionForControlEvents(this, cccontrol_selector(HelloWorld::OnTouchCancel), CCControlEventTouchCancel);


                
            }
需要注意的事件,不要開啟touch事件,否則會找不到。 也就是這句//CCDirector::sharedDirector()->getTouchDispatcher()->addTargetedDelegate(this, 0, true);
具體的按鈕事件實驗結果說明:
CCControlEventTouchDown:鼠標該處于按下并曾經點中按鈕時,則觸發一次 
CCControlEventTouchDragEnter:當鼠標處于按下并曾經點中按鈕的狀態下,鼠標進入按鈕范圍,則觸發一次 ,也就是處于按下狀態,回到該按鈕區域
CCControlEventTouchDragExit:當鼠標處于按下并曾經點中按鈕的狀態下,鼠標離開按鈕范圍,則觸發一次 ,也就是處于按下狀態,離開該按鈕區域
CCControlEventTouchDragInside:當鼠標處于按下并曾經點中按鈕的狀態下,鼠標進入按鈕范圍,則觸發,每產生移動,就會觸發 ,
CCControlEventTouchDragOutside: 當鼠標處于按下并曾經點中按鈕的狀態下,鼠標離開按鈕范圍,則觸發,每產生移動,就會觸發 
CCControlEventTouchUpInside:當鼠標處于按下并曾經點中按鈕的狀態下,鼠標松開且在按鈕范圍內,則觸發一次,也就是處于按下狀態,并在該按鈕區域放起
CCControlEventTouchUpOutside:當鼠標處于按下并曾經點中按鈕的狀態下,鼠標松開且在按鈕范圍外,則觸發一次 也就是處于按下狀態,但是已經離開該按鈕區域,再放起
CCControlEventTouchCancel:暫時沒有發現能用鼠標觸發這個事件的操作
了解后,就可以根據實際要求實現了
posted on 2014-05-05 23:49 冬瓜 閱讀(5095) 評論(0)  編輯 收藏 引用 所屬分類: 原創 、cocos2dx
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲乱码视频| 洋洋av久久久久久久一区| 男女精品网站| 中文成人激情娱乐网| 欧美韩日视频| 亚洲韩国一区二区三区| 久久久777| 欧美一级日韩一级| 国产农村妇女精品一二区| 亚洲亚洲精品在线观看| 亚洲破处大片| 久久精品视频在线播放| 国产一区日韩欧美| 久久九九99视频| 久久精品亚洲一区二区| 国内外成人免费激情在线视频网站 | 亚洲精品资源| 欧美日韩免费视频| 亚洲色在线视频| 一本色道久久加勒比精品| 欧美日韩国产成人高清视频| 9色国产精品| 亚洲第一黄网| 欧美精选在线| 午夜在线精品| 久久狠狠久久综合桃花| 一区二区视频免费在线观看| 欧美+亚洲+精品+三区| 美国十次了思思久久精品导航| 精品动漫av| 亚洲高清视频一区二区| 欧美日韩国内| 午夜亚洲福利在线老司机| 性伦欧美刺激片在线观看| 一区精品久久| 亚洲精品国产拍免费91在线| 国产精品国产三级国产aⅴ9色| 亚洲欧美日韩精品久久奇米色影视| 亚洲欧美日韩精品一区二区| 亚洲精品国产精品国自产在线| 亚洲精品在线电影| 欧美亚州韩日在线看免费版国语版| 亚洲在线网站| 欧美在线观看一二区| 亚洲人久久久| 亚洲午夜av| 在线精品视频在线观看高清| 亚洲三级电影全部在线观看高清| 国产精品日韩欧美| 欧美福利电影在线观看| 国产精品www网站| 裸体一区二区| 国产精品福利影院| 免费看的黄色欧美网站| 欧美日韩精选| 欧美不卡一卡二卡免费版| 国产精品播放| 欧美肥婆bbw| 国产区精品视频| 亚洲精品乱码久久久久久蜜桃91 | 欧美日精品一区视频| 久久久午夜电影| 欧美日韩专区| 亚洲国产精品成人精品| 国产亚洲一级| 一区二区三区四区国产精品| 亚洲国产乱码最新视频| 亚洲女人天堂成人av在线| 99国产精品99久久久久久| 久久久久国产精品www| 亚洲欧美日韩系列| 欧美精品乱码久久久久久按摩| 久久综合图片| 国产日本欧美一区二区三区| 99热在线精品观看| 91久久精品一区| 久久久久成人精品免费播放动漫| 午夜免费日韩视频| 国产精品99一区| 亚洲免费av观看| 日韩视频在线观看免费| 免费91麻豆精品国产自产在线观看| 久久不射网站| 国产农村妇女精品一区二区| 亚洲一区二区三区三| 一区二区三区日韩精品| 欧美国产在线视频| 欧美va亚洲va香蕉在线| 国内外成人在线视频| 亚洲欧美精品一区| 亚洲欧美乱综合| 欧美四级在线观看| 日韩亚洲欧美成人| 一区二区三区精品| 欧美精品v日韩精品v国产精品 | 亚洲在线网站| 国产精品av免费在线观看| 亚洲黄色成人| 99re热精品| 亚洲视频在线观看一区| 欧美日韩亚洲一区二区三区在线观看| 美女诱惑黄网站一区| 国产一区在线免费观看| 欧美一区二区三区的| 久久精品视频免费播放| 国产一区二区三区成人欧美日韩在线观看 | 午夜国产精品视频| 国产精品久久一级| 香蕉国产精品偷在线观看不卡| 欧美在线视频一区| 狠狠色丁香婷综合久久| 欧美xart系列高清| 亚洲免费av电影| 欧美中文字幕在线| 狠狠狠色丁香婷婷综合久久五月| 久久亚洲电影| 99精品99| 欧美在线视频免费| 亚洲免费观看高清完整版在线观看熊| 欧美日韩国产片| 亚洲男人天堂2024| 欧美大胆人体视频| 亚洲视频专区在线| 国产日韩欧美在线看| 久久久久久久久久久久久女国产乱 | 亚洲美洲欧洲综合国产一区| 亚洲欧美日韩网| 伊人激情综合| 欧美日韩免费观看一区| 欧美一区二区大片| 亚洲福利免费| 午夜亚洲性色福利视频| 精品动漫av| 欧美性淫爽ww久久久久无| 欧美成人亚洲成人| 亚洲视频在线一区观看| 狠狠色香婷婷久久亚洲精品| 欧美精品色一区二区三区| 午夜亚洲福利| 亚洲高清一区二区三区| 香蕉久久夜色精品| 亚洲激情电影在线| 国产精品免费一区豆花| 美国成人直播| 久久成人精品一区二区三区| 亚洲精品视频一区| 久久在线免费| 欧美一区在线视频| 一区二区精品国产| 亚洲第一精品福利| 国产欧美一区二区精品仙草咪| 欧美成人激情在线| 久久成人一区二区| 亚洲欧美国产高清| 一本一本久久a久久精品牛牛影视| 欧美3dxxxxhd| 久久久久99| 欧美一区二区三区久久精品 | 欧美搞黄网站| 久久资源在线| 亚洲成色777777女色窝| 欧美aa在线视频| 欧美在线视频日韩| 亚洲在线免费| 亚洲天堂男人| 一区二区三区欧美日韩| 亚洲人成高清| 亚洲国产高潮在线观看| 欧美高清影院| 亚洲第一伊人| 欧美黄色aaaa| 亚洲高清不卡| 亚洲电影视频在线| 欧美激情国产日韩精品一区18| 久久伊人免费视频| 久久精品中文字幕一区二区三区| 欧美在线播放| 性视频1819p久久| 亚洲影院在线| 亚洲在线观看| 亚洲欧美日韩在线观看a三区| 亚洲午夜女主播在线直播| 一本久久a久久免费精品不卡| 亚洲精品欧美在线| 亚洲久久视频| 99视频国产精品免费观看| 亚洲精品在线视频| 亚洲精品网址在线观看| 亚洲日本一区二区| 亚洲精品极品| 99re66热这里只有精品3直播| 日韩视频一区二区| 亚洲另类自拍| 亚洲无线视频| a91a精品视频在线观看| 一区二区三区四区五区视频| 亚洲视频成人| 午夜精品短视频| 久久精品成人一区二区三区 | 精品999日本|