• 大小: 13.68MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-07-14
  • 语言: 其他
  • 标签:

资源简介

一个功能简单的时钟,资源文件再Res文件夹内,如有任何问题可随时留言探讨

资源截图

代码片段和文件信息

//
//  clockBackgroundScene.cpp
//  Clock_1
//
//  Created by mzy1992 on 13-11-25.
//
//

#include “clockBackgroundScene.h“

CCScene * clockBackgroundScene::scene(){
    clockBackgroundScene * layer=clockBackgroundScene::create();
    CCScene * scene =CCScene::create();
    scene->addChild(layer); 
    return scene;
}

bool clockBackgroundScene::init(){
    CCSize winSize=CCDirector::sharedDirector()->getWinSize(); //获取屏幕大小
    CCSprite * clockBk=CCSprite::create(“background.jpg“);     //创建一个精灵
    clockBk->setPosition(ccp(winSize.width/2 winSize.height/2));//设置背景精灵的坐标
    clockBk->setScale(0.5f);                                    //将精灵缩小为原来的0.5倍
    this->addChild(clockBk);                                   //将时钟背景添加到屏幕上
    
    
    m_minute=minuteHand::create();                            //创建分针对象
    m_minute->bindSprite(CCSprite::create(“fen.png“));
    m_minute->setPosition(ccp(winSize.width/2 winSize.height/2));
    this->addChild(m_minute);
    
    m_second=secondHand::create();
    m_second->bindSprite(CCSprite::create(“miao.png“));
    m_second->setPosition(ccp(winSize.width/2 winSize.height/2));
    this->addChild(m_second);
    
    m_hour=hourHand::create();                                 //创建时针对象
    m_hour->bindSprite(CCSprite::create(“shi.png“));           //调用hourHand类中的bindSprite方法绑定精灵对象
    m_hour->setPosition(ccp(winSize.width/2 winSize.height/2));
    this->addChild(m_hour);
    
    //获取当前的系统时间
    struct cc_timeval now;
    CCTime::gettimeofdayCocos2d(&now NULL);
    struct tm *tm;
    tm = localtime(&now.tv_sec);
    nHour = tm->tm_hour;         //当前时
    nMinute = tm->tm_min;        //当前分
    nSecond = tm->tm_sec;        //当前秒
    CCLog(“%d-%d-%d“nHournMinutenSecond);  //打印出来对比一下获取的时间是否有误

    this->schedule(schedule_selector(clockBackgroundScene::MutUpdate)1); //每隔一秒钟调用一次MutUpdate方法
    
    return true;
}
void clockBackgroundScene::MutUpdate(){
  
    static int mRotation=nMinute*6;  //分针初始角度
    static int sRotation=nSecond*6;  //秒针初始角度
    
    static int hRotatio;            /*小时的计数不同于分和秒,分和秒一个周期都是60,而小时数在一天之中是从1-24,我们需要将获取到的时间先转换
                                       成12时制,再将其按照比例变成60为周期的数,即给当前小时*5 */
    if(nHour>12){                     //当 当前时间大于上午12点时
        hRotatio=(nHour-12)*5*6+(mRotation/72)*6;   /*将其转换成12时制 并*5变成以60为周期的数,因为60对应360度,所以应换算成度数应再*6,
                                                     换算完成后还应该加上分针走过的偏转角,由于分针走360度,时针走30度,所以分针每走72度时针走6度*故用分针旋转角除以72后再乘以6 */
    }
    else{                             //当前时间小于或等于12点
        hRotatio=(nHour)*5*6+(mRotation/72)*6;
    }
    
    m_second->setRotation(sRotation);  //重新设置秒针的位置,另其角度顺时针旋转6度,即走一秒钟
    m_minute->setRotation(mRotation);  //重置分针位置
    m_hour->setRotation(hRotatio);     //重置时针位置
    if(sRotation>=360){                //当秒针走了一圈(360度)时
        sRotation=0;                   //秒针旋转角归零
        mRotation+=6;                  //分针转6度,即走了一分钟
        m_minute->setRotation(mRotation); //重置分针指针位置
        if(mRotation%72==0){           

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2013-11-25 16:20  Clock_1\
     文件        6148  2013-11-25 16:25  Clock_1\.DS_Store
     目录           0  2013-11-25 20:23  __MACOSX\
     目录           0  2013-11-25 20:23  __MACOSX\Clock_1\
     文件          82  2013-11-25 16:25  __MACOSX\Clock_1\._.DS_Store
     目录           0  2013-11-25 20:23  Clock_1\.git\
     目录           0  2013-11-25 16:19  Clock_1\.git\branches\
     文件          15  2013-11-25 16:19  Clock_1\.git\COMMIT_EDITMSG
     文件         138  2013-11-25 16:19  Clock_1\.git\config
     文件          73  2013-11-25 16:19  Clock_1\.git\description
     文件          23  2013-11-25 16:19  Clock_1\.git\HEAD
     目录           0  2013-11-25 16:19  Clock_1\.git\hooks\
     文件         452  2013-11-25 16:19  Clock_1\.git\hooks\applypatch-msg.sample
     文件         896  2013-11-25 16:19  Clock_1\.git\hooks\commit-msg.sample
     文件         189  2013-11-25 16:19  Clock_1\.git\hooks\post-update.sample
     文件         398  2013-11-25 16:19  Clock_1\.git\hooks\pre-applypatch.sample
     文件        1704  2013-11-25 16:19  Clock_1\.git\hooks\pre-commit.sample
     文件        1348  2013-11-25 16:19  Clock_1\.git\hooks\pre-push.sample
     文件        4951  2013-11-25 16:19  Clock_1\.git\hooks\pre-rebase.sample
     文件        1239  2013-11-25 16:19  Clock_1\.git\hooks\prepare-commit-msg.sample
     文件        3611  2013-11-25 16:19  Clock_1\.git\hooks\update.sample
     文件       69704  2013-11-25 17:13  Clock_1\.git\index
     目录           0  2013-11-25 16:19  Clock_1\.git\info\
     文件          40  2013-11-25 16:19  Clock_1\.git\info\exclude
     目录           0  2013-11-25 20:23  __MACOSX\Clock_1\.git\
     目录           0  2013-11-25 20:23  __MACOSX\Clock_1\.git\info\
     文件         171  2013-11-25 16:19  __MACOSX\Clock_1\.git\info\._exclude
     目录           0  2013-11-25 16:19  Clock_1\.git\logs\
     文件         179  2013-11-25 16:19  Clock_1\.git\logs\HEAD
     目录           0  2013-11-25 16:19  Clock_1\.git\logs\refs\
     目录           0  2013-11-25 16:19  Clock_1\.git\logs\refs\heads\
............此处省略2264个文件信息

评论

共有 条评论