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

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

?? activeobjectexample.cpp

?? 一些symbian開發的小例子
?? CPP
字號:

//ActiveObjecExample.cpp

//Author:LiuLiPing
//version 1.0
//Date: 2006-1-25
//Example for showing you input words and if you press "Enter" showing how many
//you have inputed.

#include <e32cons.h>

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

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

//Static variable for count-switch-variable and count how many word you have inputed 
static TInt word;
static TInt num;

//////////////////////////////////////////////////////////////////////////////
//
//       CWord (definition)
//
// A class for print and count the word number
//
//////////////////////////////////////////////////////////////////////////////

class CWord:public CBase
{
public:
	static CWord* NewL(TInt aMaxLength);
	static CWord* NewLC(TInt aMaxLength);
private:
	CWord(TInt aMaxLength);
	void ConstructL(TInt aMaxLength);
public:
	TInt WordNumCountL(TChar aChar);	//Count the number of you input word
	void OutputWord();					//Outputing you input word
	TInt WordNum();						//return the number of the word that you input
	TInt Length();						//return the length of the curent word you have input
	TInt MaxLength();					//return the maxlenght of the word for limited your 
										//inputing and printing the word
	~CWord();
private:
	TInt iLength;
	TInt iMaxLength;
	HBufC* iHBufC;
};

//////////////////////////////////////////////////////////////////////////////
//
//       CAOExample (definition)
//
//////////////////////////////////////////////////////////////////////////////

class CAOExample:public CActive
{
public:
	static CAOExample* NewL(CConsoleBase* aConsole);
	static CAOExample* NewLC(CConsoleBase* aConsole);
private:
	CAOExample();
	void ConstructL(CConsoleBase* aConsole);
public:
	void Start();
	void PrintWord();					//Print the word
	void PrintWordNum();				//Print the number of the word
	void KeyPressInput(TChar aChar);	//process the key press input
	~CAOExample();
private:
	void RunL();
	void Cancel();
	void DoCancel();
private:
	CConsoleBase* iConsole;
	CWord* iCWord;

};

////////////////////////////////////////////////////////////////////////////////
//
//		CWord implement
// 
////////////////////////////////////////////////////////////////////////////////

CWord* CWord::NewL(TInt aMaxLength)
{
   CWord* self = NewLC(aMaxLength);
   CleanupStack::Pop(self);
   return self;
}
CWord* CWord::NewLC(TInt aMaxLength)
{
   CWord* self = new(ELeave) CWord(aMaxLength);
   CleanupStack::PushL(self);
   self->ConstructL(aMaxLength);
   return self;
}

void CWord::ConstructL(TInt aMaxLength)
{
   iHBufC = HBufC::NewL(aMaxLength);
}

CWord::CWord(TInt aMaxLength)
{
   iMaxLength = aMaxLength;
   iLength = 0;
}

TInt CWord::WordNumCountL(TChar aChar)
{
   TPtr ptr=iHBufC->Des();//Des():Creates and returns an modifiable pointer descriptor for the data represented by this heap descriptor.
   if(iLength<iMaxLength)
   {
	  ptr.Append(aChar);		 
	  if(!('A'<=aChar && aChar <='Z' || 'a'<=aChar && aChar <='z'))//if your input is not a letter
	  {
		 word = 0;
	  }
	  if('A'<=aChar && aChar <='Z' || 'a'<=aChar && aChar <='z')//if your input is a letter
	  {
     	 if(word==0)
		 {
		    word=1;
			++num;		//sum up the number of word 
		 }
      
	  }
	  iLength++;
      return 1;
   }
	else 
	  return 0;
}

void CWord::OutputWord()
{
   console->Printf(iHBufC->Des());
   iHBufC->Des().Zero();			//Sets the length of the data to zero
   iLength = 0;
}

TInt CWord::WordNum()
{
   return num;
}

TInt CWord::Length()
{
    return iLength;
}

TInt CWord::MaxLength()
{
    return iMaxLength;
}

CWord::~CWord()
{
   delete iHBufC;
   iHBufC = NULL;
   iLength = 0;
   iMaxLength = 0;
}

////////////////////////////////////////////////////////////////////////////////
//
//		CAOExample implement
// 
////////////////////////////////////////////////////////////////////////////////

CAOExample* CAOExample::NewL(CConsoleBase* aConsole)
{
   CAOExample* self =  NewLC(aConsole);
   CleanupStack::Pop(self);
   return self;
}

CAOExample* CAOExample::NewLC(CConsoleBase* aConsole)
{
   CAOExample* self = new(ELeave) CAOExample();
   CleanupStack::PushL(self);
   self->ConstructL(aConsole);
   return self;
}

void CAOExample::ConstructL(CConsoleBase* aConsole)
{
   iConsole = aConsole;
   iCWord = CWord::NewL(1);
   CActiveScheduler::Add(this);
}

CAOExample::CAOExample():CActive(EPriorityStandard)
{
}
void CAOExample::Start()
{
   iConsole->Read(iStatus);
   SetActive();
}

void CAOExample::PrintWord()
{
	iCWord->OutputWord();
}

void CAOExample::PrintWordNum()
{
	_LIT(KPrint,"You Input %d Word!\n");	//define the output format
	console->Printf(KPrint,iCWord->WordNum());
	//console->Printf(_L("If you want to know how many word you input please press \"Enter\"!"));
	console->Printf(_L("Please input the new word!\n"));
}

void CAOExample::KeyPressInput(TChar aChar)
{
	//if(aChar != EKeyEscape)
	//{
	iCWord->WordNumCountL(aChar);
	if(iCWord->Length() == iCWord->MaxLength())
	{
	   PrintWord();
	}
	if(aChar == EKeyEnter)
	{
		PrintWordNum();
		word = 0;
		num = 0;
	}
    Start();
	//}
	//else
	//{
	//	Cancel();
    //    CActiveScheduler::Stop();
	//}
 
}

void CAOExample::RunL()
{
   KeyPressInput((TChar)iConsole->KeyCode());
}

void CAOExample::Cancel()
{
   DoCancel();
}

void CAOExample::DoCancel()
{
   iConsole->ReadCancel(); //Cancels any pending Read() operations
}

CAOExample::~CAOExample()
{
	delete iCWord;
	iCWord = NULL;
	iConsole = NULL;
}

GLDEF_C TInt E32Main()
{
	
   CTrapCleanup* cleanup=CTrapCleanup::New();	// Get cleanup stack
   TRAPD(error,doExampleL());					// callExampleL() should never leave.
   _LIT(KMsgPanicEpoc32ex,"EPOC32EX");
   __ASSERT_ALWAYS(!error,User::Panic(KMsgPanicEpoc32ex,error));
   delete cleanup;								// destroy the cleanup stack
   return 0;									// return
    }

////////////////////////////////////////////////////////////////////////////////
//
//		doExample() implement
// 
////////////////////////////////////////////////////////////////////////////////

void doExampleL()
{
  	_LIT(KMsgExampleCode,"Symbian OS AOExample");
	console = Console::NewL(KMsgExampleCode,TSize(KConsFullScreen,KConsFullScreen));
	CleanupStack::PushL(console);		// Put console onto the cleanup stack.
	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();
	CleanupStack::PopAndDestroy();		//Remove the cleanupstack and destroy
}

////////////////////////////////////////////////////////////////////////////////
//
//		callExample() implement
// 
////////////////////////////////////////////////////////////////////////////////

void callExampleL() 
    {
     CActiveScheduler* AS=new (ELeave)CActiveScheduler;	
	 CleanupStack::PushL(AS);
	 CActiveScheduler::Install(AS);	
	 CAOExample* activeObjectExample=CAOExample::NewLC(console);			
	 activeObjectExample->Start();							
	 console->Printf(_L("If you want to know how many word you input please press \"Enter\"!"));
	 console->Printf(_L("Please input the new word!\n"));
	 CActiveScheduler::Start();		
	 CleanupStack::PopAndDestroy();
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久综合精品国产一区二区三区| 亚洲第一福利视频在线| 一区二区国产视频| 国产黑丝在线一区二区三区| 欧美无乱码久久久免费午夜一区| 久久久91精品国产一区二区三区| 亚洲成人福利片| 91在线视频18| 国产调教视频一区| 久久精品噜噜噜成人88aⅴ| 欧美性xxxxx极品少妇| 国产精品久久久久久久久免费丝袜| 免费观看91视频大全| 欧美视频在线观看一区| 日韩美女视频一区| 国产91精品精华液一区二区三区 | 一区二区三区视频在线看| 国产麻豆视频一区| 精品久久久久久久久久久院品网| 爽爽淫人综合网网站| 色偷偷久久人人79超碰人人澡| 久久久久久久久岛国免费| 麻豆精品一区二区三区| 日韩一区二区电影网| 性做久久久久久| 欧美男男青年gay1069videost| 一区二区三区影院| 欧美性一级生活| 亚洲大尺度视频在线观看| 在线观看视频欧美| 亚洲影视在线观看| 欧美亚洲综合色| 五月激情综合色| 欧美日韩一区二区在线观看 | 激情欧美一区二区三区在线观看| 欧美日本韩国一区| 日本亚洲视频在线| 欧美一区二区视频网站| 奇米精品一区二区三区四区| 日韩免费一区二区| 国产精品91xxx| 国产精品久久免费看| 91毛片在线观看| 亚洲大片一区二区三区| 欧美一区二区不卡视频| 国产一区二区在线视频| 国产天堂亚洲国产碰碰| 91网站最新地址| 亚洲最新视频在线播放| 欧美一区二区三区在| 国产呦萝稀缺另类资源| 中国色在线观看另类| 91蝌蚪porny九色| 亚洲二区视频在线| 精品国产一区二区三区不卡| 国产精品一区二区三区乱码| 亚洲欧美日韩国产中文在线| 欧美日韩精品一区二区天天拍小说 | 99精品1区2区| 午夜精品福利久久久| 精品久久国产字幕高潮| 国产不卡视频在线播放| 一区二区三区蜜桃| 精品免费国产二区三区 | 欧美久久一区二区| 国产真实乱对白精彩久久| 亚洲丝袜美腿综合| 91精品国产综合久久国产大片| 国产成人精品免费看| 亚洲在线成人精品| 欧美极品美女视频| 欧美日韩一二区| 成人午夜av影视| 天天av天天翘天天综合网色鬼国产| 久久青草国产手机看片福利盒子| 91蜜桃网址入口| 国产在线精品一区二区夜色 | 久久精品久久99精品久久| 中文字幕日本不卡| 久久这里只有精品首页| 欧美女孩性生活视频| av一区二区三区| 国产在线一区观看| 日本最新不卡在线| 亚洲女女做受ⅹxx高潮| 久久人人超碰精品| 日韩一区二区免费在线电影| 日本精品视频一区二区三区| 国产主播一区二区| 免费成人结看片| 亚洲大型综合色站| 亚洲视频在线一区二区| 国产精品色哟哟| 久久久久久久久久久99999| 日韩欧美第一区| 日韩一区二区在线播放| 欧美伊人久久久久久久久影院 | 亚洲欧美综合另类在线卡通| 精品国产一二三区| 日韩一区二区免费在线电影| 在线观看三级视频欧美| 91丝袜美女网| www..com久久爱| 成人美女视频在线观看| 国产91对白在线观看九色| 国产精品资源在线观看| 精品午夜久久福利影院 | 日韩精品一区二区三区在线观看| 欧美在线短视频| 色8久久人人97超碰香蕉987| 99re这里只有精品6| av色综合久久天堂av综合| yourporn久久国产精品| 成人av综合在线| 91视视频在线观看入口直接观看www| 成人高清伦理免费影院在线观看| 丁香婷婷综合激情五月色| 国产成人免费网站| 不卡的av电影在线观看| av色综合久久天堂av综合| 色综合久久88色综合天天免费| 色哟哟国产精品免费观看| 在线免费观看日韩欧美| 欧美军同video69gay| 日韩三级电影网址| 欧美r级电影在线观看| 久久精品一区四区| 国产精品美女久久久久av爽李琼| 国产精品污网站| 一区二区久久久| 老司机精品视频在线| 粉嫩一区二区三区性色av| 成人毛片老司机大片| 精品视频在线免费| 精品欧美乱码久久久久久1区2区| 精品国精品国产尤物美女| 欧美国产丝袜视频| 亚洲一级在线观看| 麻豆成人久久精品二区三区红| 国产一区二区成人久久免费影院| 成人激情av网| 欧美人动与zoxxxx乱| 久久一区二区三区四区| 亚洲欧美日韩国产手机在线| 天堂影院一区二区| 粉嫩一区二区三区性色av| 欧美系列一区二区| 久久精品一级爱片| 一区二区三区影院| 国产精品一区二区久久不卡| 在线一区二区三区四区五区| 精品毛片乱码1区2区3区| 中文字幕一区日韩精品欧美| 日韩成人午夜电影| 成人福利电影精品一区二区在线观看| 欧美亚洲国产一区二区三区va | 国产69精品一区二区亚洲孕妇| 在线视频欧美区| 久久久久国产精品厨房| 亚洲午夜一区二区三区| 国产精品一二三在| 在线成人午夜影院| 国产精品国产精品国产专区不片| 日韩激情一二三区| 91原创在线视频| 久久精品一二三| 男女男精品视频| 99这里都是精品| 精品国产1区二区| 亚洲18色成人| 91国偷自产一区二区三区观看 | 亚洲已满18点击进入久久| 国产大片一区二区| 日韩视频免费观看高清在线视频| 亚洲日本免费电影| 国产精品综合一区二区| 欧美精品丝袜中出| 亚洲女同女同女同女同女同69| 黄一区二区三区| 日韩亚洲欧美在线| 午夜精品福利一区二区蜜股av| a在线欧美一区| 国产精品嫩草久久久久| 国产精品亚洲午夜一区二区三区 | 理论电影国产精品| 91精品国产全国免费观看| 美国av一区二区| 日韩一区二区麻豆国产| 日韩高清国产一区在线| 欧美日韩国产精选| 亚洲高清免费一级二级三级| 日本乱码高清不卡字幕| 一区二区三区在线观看欧美| 色悠悠久久综合| 亚洲永久免费视频| 欧美日韩国产综合草草| 亚洲成人动漫一区| 91麻豆精品国产91久久久久久 | 欧美一区二区观看视频| 日本亚洲欧美天堂免费|