亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? timer.cpp

?? 一個學習Symbian很好的例子
?? CPP
字號:
// Timer.cpp
//
// Copyright (c) 2005 CCNIIT.  All rights reserved.

//Author: Hewei
// version 1.0
//Date: 2005-10-20

// Example shows attempt to use avctive object to display local timer 
// NOTE: the structure of this example is different to standard E32 examples

#include <e32cons.h>
#include <e32std.h>
#include <e32des16.h>

  // All messages written to this
LOCAL_D CConsoleBase* console;

// Function prototypes
 void callExampleL();
 void doExampleL();
 

/////////////////////////////////////////////////////////////////////////////////
// CActiveTimer derives from Cactive, is an active object.
// CactiveConsole definition:
//
////////////////////////////////////////////////////////////////////////////////
class CActiveTimer : public CTimer
 {
 
 public:
	static CActiveTimer* CActiveTimer::NewL(CConsoleBase* aConsole);
	static CActiveTimer* CActiveTimer::NewLC(CConsoleBase* aConsole);
	 ~CActiveTimer();
 private:
	 CActiveTimer();
	 void ConstructL(CConsoleBase* aConsole);
 public:
	 void Start();
 private:	 
	 void RunL();
	 void Cancel();
	 void DoCancel();
	 void Stop();
private:
	 CConsoleBase* iConsole;
	 TTime iTime;
	 RTimer iTimer;
	 TBool iStop;
};
////////////////////////////////////////////////////////////////////////////////
//
//CActiveTimer implement
// 
////////////////////////////////////////////////////////////////////////////////
CActiveTimer* CActiveTimer::NewL(CConsoleBase* aConsole)
{
	CActiveTimer* self=CActiveTimer::NewLC( aConsole);
	CleanupStack::Pop(self);
	return self;
}
CActiveTimer* CActiveTimer::NewLC(CConsoleBase* aConsole)
{
	
	CActiveTimer* self=new (ELeave) CActiveTimer();
	CleanupStack::PushL(self);
	self->ConstructL(aConsole);
	return self;
}
	
CActiveTimer::CActiveTimer()
	 :CTimer(CActive::EPriorityStandard)
 {
	 iStop=FALSE;
	 
 }
void CActiveTimer::ConstructL(CConsoleBase* aConsole)
{
	CTimer::ConstructL();
	iConsole=aConsole;
	iTimer.CreateLocal();
    CActiveScheduler::Add(this);
}
 
 void CActiveTimer::Start()
 {
    if(IsActive())
   		return;
	 iTimer.After(iStatus,1000);
	 SetActive();
	
 }
 
 void CActiveTimer::RunL()
 {
	 if(iStop==FALSE)
	 {

	 iTime.HomeTime();
	 iConsole->ClearScreen();
	 TDay day=iTime.DayNoInWeek();
	 TDayName Dname;
	 Dname.Set(day);
     Dname.ZeroTerminate();
     TDateTime dt;
     dt=iTime.DateTime();
     _LIT(KTIME,"today is:%d-%d-%d\n %s\n%d:%d:%d\n");
     iConsole->Printf(KTIME,dt.Year(),dt.Month()+1,dt.Day()+1,Dname.Ptr(),dt.Hour(),dt.Minute(),dt.Second());
     Start();
	 }
	 else
		 CActiveScheduler::Stop();
   
}
 void CActiveTimer::Stop()
 {
	 iStop=TRUE;
 }
 
 void CActiveTimer::Cancel()
 {
    DoCancel();
 }
 void CActiveTimer::DoCancel()
 {
	 CTimer::DoCancel();
 }
 CActiveTimer::~CActiveTimer()
 {
	 Cancel();
	 iConsole=NULL;
	 iTimer.Close();
 }
 ////////////////////////////////////////////////////////////////////////////////////////
 //
 //CActiveConsole class definition
 //
 /////////////////////////////////////////////////////////////////////////////////////////
 class CActiveConsole : public CActive
 {
 public:
    static CActiveConsole* NewL(CConsoleBase* aConsole);
	static CActiveConsole* NewLC(CConsoleBase* aConsole);
 private:
	 CActiveConsole(CConsoleBase* aConsole);
	 void ConstructL();
	 ~CActiveConsole();
 public:
	 void Start();
	 void ProcessKeyInput(TChar aChar);
 private:	 
	 void RunL();
	 void Cancel();
	 void DoCancel();

 private:
	 CConsoleBase* iConsole;
	
};
////////////////////////////////////////////////////////////////////////////////
//
//CActiveConsole implement
// 
////////////////////////////////////////////////////////////////////////////////
 CActiveConsole* CActiveConsole::NewL(CConsoleBase* aConsole)
 {
  CActiveConsole* self=CActiveConsole::NewL(aConsole);
   CleanupStack::Pop(self);
   return self;
 }
 CActiveConsole* CActiveConsole::NewLC(CConsoleBase* aConsole)
 {
	 
	 CActiveConsole* self=new (ELeave)CActiveConsole(aConsole);
	 CleanupStack::PushL(self);
	 self->ConstructL();
	 return self;
 }
 CActiveConsole::CActiveConsole(CConsoleBase* aConsole)
 :CActive(EPriorityStandard)
 {
	 iConsole=aConsole;

 }
 void CActiveConsole::ConstructL()
 {
	
	 CActiveScheduler::Add(this);
 }
 void CActiveConsole::Start()
 {
     iConsole->Read(iStatus);
	 SetActive();
 }
 void CActiveConsole::ProcessKeyInput(TChar aChar)
 {
     if(aChar==EKeyEscape)
	 {
         CActiveScheduler::Stop();
		 return;
	 }
	
	 iConsole->Read(iStatus);
     SetActive();
 }
 
 void CActiveConsole::RunL()
 {
   
	ProcessKeyInput((TChar)iConsole->KeyCode());
 }

 void CActiveConsole::Cancel()
 {
    DoCancel();
 }
 void CActiveConsole::DoCancel()
 {
	iConsole->ReadCancel();
 }
 CActiveConsole::~CActiveConsole()
 {
	
	 iConsole=NULL;
 }
 ////////////////////////////////////////////////////////////////////////////////
 //
 //use CActiveConsole object
 //
 /////////////////////////////////////////////////////////////////////////////////
GLDEF_C TInt E32Main()
    {
	  // Get cleanup stack
	CTrapCleanup* cleanup=CTrapCleanup::New();

	 // Some more initialization, then do the example
    TRAPD(error,doExampleL());
	// callExampleL() should never leave.
	_LIT(KMsgPanicEpoc32ex,"EPOC32EX");
	__ASSERT_ALWAYS(!error,User::Panic(KMsgPanicEpoc32ex,error));
   // destroy the cleanup stack
	delete cleanup;
	// return
	return 0;
    }
//////////////////////////////////////////////////////////////////////////////
//
//doExample() and callExample() impletement
//
//////////////////////////////////////////////////////////////////////////////
void doExampleL()
{
  	//Get Console;
	_LIT(KMsgExampleCode,"Symbian OS Example Code");
	console = Console::NewL(KMsgExampleCode,TSize(KConsFullScreen,KConsFullScreen));
		// Put console onto the cleanup stack.
	CleanupStack::PushL(console);

	int error;
	TRAP(error,callExampleL());
	//TRAPD(error,callExampleL());
    if(error)
	{
		_LIT(KERROR,"error occured!\n");
		console->Printf(KERROR);
	
	}
	else{
      _LIT(KNOLEAVE,"No Leave!\n");
		console->Printf(KNOLEAVE);
	}
	console->Getch();
		// Remove the console object from the cleanupstack
	  // and destroy it. 	
	CleanupStack::PopAndDestroy();
}

void callExampleL() 
    {
     CActiveScheduler* AS=new (ELeave)CActiveScheduler;
	 CleanupStack::PushL(AS);
	 CActiveScheduler::Install(AS);

	 CActiveConsole* con=CActiveConsole::NewLC(console);
	 con->Start();

	
	 CActiveTimer* tm=CActiveTimer::NewLC(console);
	 tm->Start();

	 CActiveScheduler::Start();
	 CleanupStack::PopAndDestroy();
}












?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩五月天| 欧美专区亚洲专区| 日韩欧美电影在线| 国产ts人妖一区二区| 亚洲男人天堂av| 91精品欧美一区二区三区综合在| 日日夜夜精品视频免费| 日韩福利视频网| 欧美tickling网站挠脚心| 懂色av一区二区夜夜嗨| 亚洲视频一二三| 欧美精品一区二区久久久| 色婷婷av一区二区| 精品制服美女丁香| 欧美国产在线观看| 欧美精品一卡二卡| 成人在线视频一区| 五月天欧美精品| 欧美激情资源网| 欧美亚洲国产一区二区三区 | 一区二区三区四区不卡视频| 91精品国产综合久久久久久久久久 | 久久国产综合精品| 久久只精品国产| 欧美视频精品在线观看| 国产成人综合网| 同产精品九九九| 国产精品久久久久久久久晋中| 欧美日韩高清一区二区不卡| 国产高清久久久久| 偷拍亚洲欧洲综合| 久久精品人人做| 在线播放视频一区| 91看片淫黄大片一级在线观看| 久久精品免费看| 一区二区三区精密机械公司| 国产欧美日韩麻豆91| 欧美一级午夜免费电影| 日本韩国精品在线| 蜜臀久久久久久久| 亚洲午夜一二三区视频| 国产精品久久99| 精品播放一区二区| 欧美一区二区精美| 欧美三级蜜桃2在线观看| 99久久伊人网影院| 久久精品999| 五月天欧美精品| 一级中文字幕一区二区| 中文字幕免费观看一区| 久久亚洲春色中文字幕久久久| 5566中文字幕一区二区电影| 欧美中文字幕一区二区三区亚洲| 9l国产精品久久久久麻豆| 久久精品二区亚洲w码| 日本欧美肥老太交大片| 中文字幕免费一区| 国产精品美女久久福利网站| 国产欧美视频一区二区三区| 久久久久久免费网| 久久久九九九九| 久久亚洲影视婷婷| 久久久久免费观看| 精品国产乱码久久久久久图片| 在线欧美日韩精品| 91久久国产最好的精华液| 色综合天天综合色综合av| 成人性色生活片免费看爆迷你毛片| 国产一二精品视频| 国产乱码精品一区二区三区忘忧草 | 色av一区二区| 91福利小视频| 在线这里只有精品| 欧美男生操女生| 色婷婷综合久色| 欧美亚洲自拍偷拍| 欧美三级中文字| 欧美一区二区在线观看| 精品国产一二三区| 91精品免费在线| 2021中文字幕一区亚洲| 久久久久国产精品厨房| 国产精品欧美一区喷水| 国产精品亚洲а∨天堂免在线| 亚洲精品高清视频在线观看| 日本vs亚洲vs韩国一区三区二区 | 日本不卡在线视频| 欧美一区欧美二区| 久久综合九色综合97婷婷| 亚洲欧美影音先锋| 青青青伊人色综合久久| 成人精品免费看| 欧美日韩mp4| 国产色一区二区| 午夜伦欧美伦电影理论片| 国产乱码精品一品二品| 精品视频一区二区不卡| 国产精品无码永久免费888| 污片在线观看一区二区| 99久久久精品| 欧美成人综合网站| 亚洲最大成人网4388xx| 国产一区二区中文字幕| 欧美三级在线看| 国产精品久久毛片| 麻豆国产一区二区| 欧美专区日韩专区| 国产精品免费看片| 国内精品久久久久影院薰衣草 | 婷婷综合在线观看| 色综合色狠狠综合色| 久久香蕉国产线看观看99| 日韩精品一级中文字幕精品视频免费观看 | 91麻豆视频网站| 久久久久久99精品| 久久国产尿小便嘘嘘| 欧美视频中文字幕| 日韩一区中文字幕| 久久久噜噜噜久久中文字幕色伊伊 | 精品国产污污免费网站入口 | 亚洲亚洲精品在线观看| www.亚洲在线| 久久精品亚洲麻豆av一区二区| 日韩精品免费视频人成| 欧美图区在线视频| 亚洲欧美日韩一区二区| 国产suv精品一区二区三区| 欧美大片国产精品| 秋霞午夜av一区二区三区| 欧美日韩在线播放| 亚洲小少妇裸体bbw| 色天天综合久久久久综合片| 国产精品网站在线播放| 国产不卡一区视频| 国产亚洲美州欧州综合国| 精品一区二区免费视频| 日韩免费在线观看| 另类欧美日韩国产在线| 日韩一区二区在线看片| 日韩和的一区二区| 欧美丰满高潮xxxx喷水动漫| 婷婷久久综合九色国产成人| 欧美日韩综合在线免费观看| 午夜影院在线观看欧美| 欧美精品aⅴ在线视频| 无吗不卡中文字幕| 51久久夜色精品国产麻豆| 视频一区免费在线观看| 3d成人h动漫网站入口| 日韩高清在线电影| 欧美v日韩v国产v| 国产在线播放一区二区三区| 久久天堂av综合合色蜜桃网| 国产一区二区91| 国产精品视频观看| 色婷婷综合久久久久中文一区二区 | 久久综合资源网| 国产一区二区三区| 国产精品系列在线| 91久久国产综合久久| 日韩精品乱码免费| 欧美大黄免费观看| 国产精品99久久久久久似苏梦涵 | 欧美伊人久久久久久午夜久久久久| 亚洲午夜一区二区三区| 日韩一区二区电影在线| 久久国产生活片100| 国产精品伦理在线| 欧美影片第一页| 久久成人综合网| 国产精品久久夜| 欧美色老头old∨ideo| 奇米影视在线99精品| 日本一区二区三区四区| 91福利精品视频| 午夜电影一区二区| 国产亚洲精品免费| 在线免费观看视频一区| 久久精品国产99久久6| ㊣最新国产の精品bt伙计久久| 欧美日韩精品一区二区三区蜜桃 | 激情综合五月天| 国产精品久久久久aaaa| 欧美性色欧美a在线播放| 免费欧美日韩国产三级电影| 中文幕一区二区三区久久蜜桃| 欧美三级在线看| 高清不卡一区二区在线| 香蕉久久一区二区不卡无毒影院| 久久久亚洲高清| 精品视频在线免费观看| 国产成人高清视频| 视频一区欧美日韩| 亚洲三级理论片| 久久久久久久久久久99999| 欧美亚洲日本国产| bt欧美亚洲午夜电影天堂| 男女激情视频一区| 亚洲欧美日韩一区二区三区在线观看| 日韩女同互慰一区二区|