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

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

?? classscheduleappui.cpp

?? 一個學習Symbian很好的例子
?? CPP
?? 第 1 頁 / 共 3 頁
字號:
    {
        CFileMan *fileman = CFileMan::NewL(CEikonEnv::Static()->FsSession());
        CleanupStack::PushL(fileman);
        User::LeaveIfError(fileman->Delete(KClassScheduleFileName, 0));                          //刪除文件,0表示遞歸處理
        CleanupStack::PopAndDestroy(); //fileman
        CEikonEnv::Static()->ReadResource(tips, R_STR_DELETE_ALL_TIPS);                     //從資源文件中獲取"全部刪除成功"
        ShowNotify(tips);                                                                   //顯示提示對話框
        delete iDB;                                                                                   
        iDB = new(ELeave) CClassScheduleDB();                                                   //定義并分配一個CSyllabusDB 類型的變量 
        iAppContainer->CreateListBoxL();
    }
}

//--------------------------------------------------------------------------
//顯示listbox
//--------------------------------------------------------------------------

TInt CClassScheduleAppUi::ShowPopListBox(TInt aTitleResourceId, TInt *aSelectIndex)
{
    CAknSinglePopupMenuStyleListBox *list = new(ELeave) CAknSinglePopupMenuStyleListBox; //定義一個CAknSinglePopupMenuStyleListBox類型的列表框變量
    CleanupStack::PushL(list);
    CAknPopupList *popupList = CAknPopupList::NewL(list, R_AVKON_SOFTKEYS_OK_BACK,AknPopupLayouts::EMenuGraphicWindow);
    CleanupStack::PushL(popupList);
    list->ConstructL(popupList, CEikListBox::ELeftDownInViewRect);
    list->CreateScrollBarFrameL(ETrue);               
	 //創建一個滾動條框架ETrue表示預先分配內存給滾動條   
	
    list->ScrollBarFrame()->SetScrollBarVisibilityL(CEikScrollBarFrame::EOff,CEikScrollBarFrame::EAuto); //設置滾動條的水平和垂直的值

    TBuf<32> noneText;
    CEikonEnv::Static()->ReadResource(noneText, R_STR_NONE);

    CDesCArray* items = STATIC_CAST( CDesCArray*,list->Model()->ItemTextArray());
    TName itemText;
    CArrayFixFlat<TClassScheduleDBStruct>* arrayDay = (CArrayFixFlat<TClassScheduleDBStruct>*)iDB->iArray->At(iDB->iWeekId);
    TClassScheduleDBStruct &db = arrayDay->At(iAppContainer->GetCurrentItemIndex());
    CEikonEnv::Static()->ReadResource(itemText, R_STR_COURSE_NAME); //獲取課程名的信息
    itemText.Append(KColon);
    if(db.iName.Length()==0)
        itemText.Append(noneText);
    else
        itemText.Append(db.iName);
    items->AppendL(itemText);
    
    CEikonEnv::Static()->ReadResource(itemText, R_STR_COURSE_TIME);	//獲取上課時間的信息
    itemText.Append(KColon);
    itemText.Append(GetTimeStringFromTInt64(db.iTime));
    items->AppendL(itemText);
    
    CEikonEnv::Static()->ReadResource(itemText, R_STR_COURSE_CLASSROOM);  //獲取上課地點的信息
    itemText.Append(KColon);
    if(db.iAddr.Length()==0)
        itemText.Append(noneText);
    else
        itemText.Append(db.iAddr);
    items->AppendL(itemText);
    
    CEikonEnv::Static()->ReadResource(itemText, R_STR_COURSE_TEACHER);   //獲取授課教師的信息
    itemText.Append(KColon);
    if(db.iTeacher.Length()==0)
        itemText.Append(noneText);
    else
        itemText.Append(db.iTeacher);
    items->AppendL(itemText);

    CEikonEnv::Static()->ReadResource(itemText, R_STR_COURSE_REMARK);   //獲取備注的信息
    itemText.Append(KColon);
    if(db.iRemark.Length()==0)
        itemText.Append(noneText);
    else
        itemText.Append(db.iRemark);
    items->AppendL(itemText);

    CEikonEnv::Static()->ReadResource(itemText, R_STR_LESSON_01 + iAppContainer->GetCurrentItemIndex());
    popupList->SetTitleL(itemText);   //設置對話框文本,(包含新的標題文本)
    
    CEikButtonGroupContainer *iBgc = popupList->ButtonGroupContainer();	//定義按鈕組
    CEikonEnv::Static()->ReadResource(itemText, aTitleResourceId);
    iBgc->SetCommandL(EAknSoftkeyOk, itemText);							//設置按鈕的文本,改變按鈕的文本,通過aCommandId 識別
    iBgc->DrawNow();

    list->SetCurrentItemIndex(*aSelectIndex);							//定置當前項的索引,這個函數改變當前項,但不能重畫列表視圖或更新選區,參數表示那個項被設置為當前的

    TInt popupOk = popupList->ExecuteLD();								//顯示列表
    *aSelectIndex = list->CurrentItemIndex();							//將返回的當前項的索引好賦給aSelectIndex
    CleanupStack::Pop();            // popupList
    CleanupStack::PopAndDestroy();  // list

    return popupOk;
}

//--------------------------------------------------
//查詢信息
//--------------------------------------------------

void CClassScheduleAppUi::CmdSearchForName()
{
    TName name, tips;
    CAknTextQueryDialog* dlg = CAknTextQueryDialog::NewL(name, CAknQueryDialog::ENoTone); //定義一個CAknTextQueryDialog類型的對話框變量
    CEikonEnv::Static()->ReadResource(tips, R_STR_COURSE_NAME);                           //從資源文件獲取"課程名"
    dlg->SetPromptL(tips);						//設置查詢的提示文本
    if (dlg->ExecuteLD(R_DIALOG_INPUT))			//如果輸入信息
    {
        CmdSearchFromDB(ECourseName, name);		//從數據庫中查找和輸入的課程名相同的所有信息并顯示
    }
}

void CClassScheduleAppUi::CmdSearchForTime()
{
    TName name, tips;
    TTime value;
    value.HomeTime();
    CAknTimeQueryDialog* dlg = CAknTimeQueryDialog::NewL( value, CAknQueryDialog::ENoTone ); //定義一個CAknTimeQueryDialog類型的對話框變量
    CleanupStack::PushL(dlg);
    CEikonEnv::Static()->ReadResource(tips, R_STR_COURSE_TIME);	//從資源文件獲取"上課時間"
    dlg->SetPromptL(tips);										//設置查詢的提示文本
    CleanupStack::Pop(); //dlg
    
    if(dlg->ExecuteLD( R_DIALOG_TIME_QUERY ))					//如果輸入一個時間
    {
        TInt64 time = value.Int64();							//將時間的值賦給time
        name.Copy(GetTimeStringFromTInt64(time));				//將時間拷貝到上課時間中
        CmdSearchFromDB(ECourseTime, name);						//從數據庫中查找和輸入的上課時間相同的所有信息并顯示
    }
}

void CClassScheduleAppUi::CmdSearchForAddr()
{
    TName name, tips;
    CAknTextQueryDialog* dlg = CAknTextQueryDialog::NewL(name, CAknQueryDialog::ENoTone);//定義一個CAknTextQueryDialog類型的對話框變量
    CEikonEnv::Static()->ReadResource(tips, R_STR_COURSE_CLASSROOM);                     //從資源文件獲取"上課地點"
    dlg->SetPromptL(tips);                                                               //設置查詢的提示文本
    CleanupStack::Pop(); //dlg
    if (dlg->ExecuteLD(R_DIALOG_INPUT))                                                  //如果輸入一個上課地點
    {
        CmdSearchFromDB(ECourseAddr, name);                                             //從數據庫中查找和輸入的上課地點相同的所有信息并顯示
    }
}

void CClassScheduleAppUi::CmdSearchForTeacher()
{
    TName name, tips;
    CAknTextQueryDialog* dlg = CAknTextQueryDialog::NewL(name, CAknQueryDialog::ENoTone);//定義一個CAknTextQueryDialog類型的對話框變量
    CEikonEnv::Static()->ReadResource(tips, R_STR_COURSE_TEACHER);                       //從資源文件獲取“授課教師”
    dlg->SetPromptL(tips);                                                               //設置查詢的提示文本                                                                      
    if (dlg->ExecuteLD(R_DIALOG_INPUT))                                                  //如果輸入一個授課教師的名字
    {
        CmdSearchFromDB(ECourseTeacher, name);                                           //從數據庫中查找和輸入的授課教師名相同的所有信息并顯示
    }
}

void CClassScheduleAppUi::CmdSearchForRemark()
{
    TName name, tips;
    CAknTextQueryDialog* dlg = CAknTextQueryDialog::NewL(name, CAknQueryDialog::ENoTone); //定義一個CAknTextQueryDialog類型的對話框變量
    CEikonEnv::Static()->ReadResource(tips, R_STR_COURSE_REMARK);                         //從資源文件獲取“備注”
    dlg->SetPromptL(tips);                                                                //設置查詢的提示文本  
    if (dlg->ExecuteLD(R_DIALOG_INPUT))                                                   //如果輸入備注的信息
    {
        CmdSearchFromDB(ECourseRemark, name);                                             //從數據庫中查找和輸入的備注信息相同的所有信息并顯示
    }
}

//-----------------------------------------------------------------------
//從數據庫中查詢
//-----------------------------------------------------------------------

void CClassScheduleAppUi::CmdSearchFromDB(TInt aType, TDesC& aSearchText)
{
    TInt weekid = EWeek1;
    TInt lessonid = ECourse01;
    CArrayFixFlat<TClassScheduleDBStruct>* arrayDay = NULL;

    for(weekid=EWeek1; weekid<=EWeek7; weekid++)                                        //循環從周一到周末
    {
        arrayDay = (CArrayFixFlat<TClassScheduleDBStruct>*)iDB->iArray->At(weekid);          //返回一個元素索引在數組中的位置
        for(lessonid=ECourse01;lessonid<=ECourse10;lessonid++)                          //循環從第一節課到第十節課
        {
            iIsSearchFlag[weekid][lessonid] = EFalse;                                             
            TClassScheduleDBStruct &db = arrayDay->At(lessonid);
            switch(aType)                 
            {
            case ECourseTime:                                                            //按時間查詢
                {
                    TBuf<32> time;
                    time.Copy(GetTimeStringFromTInt64(db.iTime));
                    if(time.Find(aSearchText)>=0)                                       //如果找到
                        iIsSearchFlag[weekid][lessonid] = ETrue;
                }
                break;
            case ECourseName:                                                           //按課程名查找
                if(db.iName.Find(aSearchText)>=0)
                    iIsSearchFlag[weekid][lessonid] = ETrue;
                break;
            case ECourseAddr:                                                          //按上課地點查找
                if(db.iAddr.Find(aSearchText)>=0)
                    iIsSearchFlag[weekid][lessonid] = ETrue;
                break;
            case ECourseTeacher:                                                      //按授課教師查找
                if(db.iTeacher.Find(aSearchText)>=0)
                    iIsSearchFlag[weekid][lessonid] = ETrue;
                break;
            case ECourseRemark:                                                       //按備注查找
                if(db.iRemark.Find(aSearchText)>=0)
                    iIsSearchFlag[weekid][lessonid] = ETrue;
                break;
            }
        }
    }
    iAppContainer->CreateSearchListBoxL();
}

//-----------------------------------------------------
//查找當前時間的課程
//-----------------------------------------------------

void CClassScheduleAppUi::CheckCurCourse()
{
    TTime curTime;
    curTime.HomeTime();          //設置時間和日期
    TInt lessonid = ECourse01;
    TName tips;
    CArrayFixFlat<TClassScheduleDBStruct>* arrayDay = (CArrayFixFlat<TClassScheduleDBStruct>*)iDB->iArray->At(iDB->iWeekId);//返回一個元素索引在數組中的位置
    for(lessonid=ECourse01;lessonid<=ECourse10;lessonid++)				//循環從第一節課到第十節課
    {
        TClassScheduleDBStruct &db = arrayDay->At(lessonid);
        TTime dbTime(db.iTime);											//從數據庫中獲取已輸入的時間
        TInt off = dbTime.DateTime().Hour() - curTime.DateTime().Hour();//輸入到數據庫的時間與當前時間相減
        if(off==0)                                                      //如果相等
        {
            CEikonEnv::Static()->ReadResource(tips, R_STR_HAS_COURSE_TIPS);	//從資源文件獲取“當前時刻有課”
            ShowNotify(tips);												//顯示提示信息        
            DetailDB(iDB->iWeekId, lessonid);								//顯示詳細信息
            return;
        }
    }
    CEikonEnv::Static()->ReadResource(tips, R_STR_NO_COURSE_TIPS);			//如果當前時間無課程從資源文件獲取“當前時刻無課程”
    ShowNotify(tips);														//顯示提示信息
}

// End of File  

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲精品一区二区三区四区高清| 亚洲女同ⅹxx女同tv| 国产精品久久福利| 污片在线观看一区二区| 丰满少妇在线播放bd日韩电影| 欧美亚洲国产一卡| 欧美国产日韩a欧美在线观看 | 色婷婷av一区二区三区大白胸| 欧美二区三区的天堂| 亚洲综合成人网| 久久99最新地址| 欧美日韩不卡视频| 亚洲精品乱码久久久久久久久| 国产一区二区三区免费播放| 欧美丝袜丝nylons| 国产精品美女一区二区三区| 美国欧美日韩国产在线播放| 91官网在线观看| 国产亚洲一本大道中文在线| 日本欧美大码aⅴ在线播放| 91亚洲精品久久久蜜桃网站| 久久久精品综合| 免费观看日韩av| 8x福利精品第一导航| 亚洲乱码日产精品bd| 成人免费的视频| 精品国产第一区二区三区观看体验| 亚洲h精品动漫在线观看| 日本伦理一区二区| 一区二区三区在线观看国产| www..com久久爱| 中文字幕的久久| 丁香婷婷综合五月| 亚洲国产精品激情在线观看| 久久97超碰国产精品超碰| 国产精品一区二区你懂的| 精品国产免费人成在线观看| 美腿丝袜亚洲三区| 日韩欧美一卡二卡| 国内精品免费在线观看| 欧美成人bangbros| 国产精品影视在线| 亚洲线精品一区二区三区| caoporen国产精品视频| 亚洲情趣在线观看| 欧美视频在线观看一区二区| 亚洲大尺度视频在线观看| 欧美少妇一区二区| 午夜精品久久久久久| 制服丝袜亚洲播放| 久久91精品久久久久久秒播| 久久精品视频网| 国产69精品久久777的优势| 日本一区二区在线不卡| 成人激情动漫在线观看| 国产精品二区一区二区aⅴ污介绍| 99视频超级精品| 亚洲一级二级三级在线免费观看| 欧美视频日韩视频在线观看| 欧美bbbbb| 久久久高清一区二区三区| 高清不卡在线观看av| 日韩理论在线观看| 欧美精品1区2区| 国产在线精品不卡| 国产精品久久久久久久久免费桃花| 国产一区二区三区综合| 精品视频1区2区| 一区二区三区四区高清精品免费观看| jlzzjlzz国产精品久久| 日韩高清不卡一区二区| 亚洲免费观看高清完整| 欧美国产精品一区二区三区| 亚洲国产综合色| 午夜国产不卡在线观看视频| 欧美一区二区三区在线看| 日韩av一级片| 亚洲国产精品av| 欧美丝袜自拍制服另类| 精品制服美女丁香| 中文字幕一区在线观看| 555夜色666亚洲国产免| yourporn久久国产精品| 日韩一区精品字幕| 久久网这里都是精品| 在线免费观看一区| 激情文学综合网| 亚洲免费观看高清完整版在线| 日韩欧美一区二区久久婷婷| 91美女精品福利| 极品美女销魂一区二区三区免费| 欧美国产视频在线| 3d成人动漫网站| 99久久精品免费观看| 国产一区二区在线观看免费| 亚洲高清免费视频| 亚洲国产精品ⅴa在线观看| 欧美乱妇一区二区三区不卡视频| 奇米色777欧美一区二区| 伊人婷婷欧美激情| 中文字幕精品一区二区精品绿巨人 | 欧美精品黑人性xxxx| 成人h动漫精品| 国产一区三区三区| 美女视频免费一区| 日韩avvvv在线播放| 一二三区精品视频| 亚洲人成人一区二区在线观看| 久久久电影一区二区三区| 日韩精品中文字幕一区| 欧美一区二区视频在线观看| 91福利小视频| 色综合久久久久综合体| 97精品超碰一区二区三区| 国产成人aaa| 国产aⅴ精品一区二区三区色成熟| 激情深爱一区二区| 狠狠色丁香婷婷综合| 激情五月激情综合网| 韩国三级电影一区二区| 久久99在线观看| 久久国内精品视频| 久久99国产精品久久99 | 91精品国产入口在线| 欧美视频一二三区| 欧美久久一区二区| 精品视频999| 91精品国产乱码| 精品毛片乱码1区2区3区| 日韩欧美亚洲国产精品字幕久久久| 日韩一区二区免费在线电影| 日韩欧美成人激情| 成人黄色在线看| 夜夜夜精品看看| 亚洲国产欧美在线| 天天操天天色综合| 久久99国产精品久久99果冻传媒| 狠狠色丁香久久婷婷综合_中| 国产专区综合网| 成人激情免费电影网址| 91香蕉视频黄| 欧美日韩国产美| 久久色成人在线| 国产欧美日韩另类视频免费观看 | 亚洲超碰精品一区二区| 亚洲成人1区2区| 国产一区二区免费视频| 国产jizzjizz一区二区| 91在线观看污| 在线观看国产一区二区| 欧美一区二区三区视频免费播放 | 日韩三级电影网址| 精品国产sm最大网站| 国产精品久久久久7777按摩| 亚洲综合男人的天堂| 日产国产高清一区二区三区| 国产在线国偷精品免费看| 豆国产96在线|亚洲| 一本一道综合狠狠老| 欧美日韩精品免费| 久久综合久久鬼色中文字| 中文字幕乱码亚洲精品一区| 亚洲精品国产第一综合99久久| 一区二区三区在线影院| 日韩专区中文字幕一区二区| 成人精品视频.| 欧美精品久久99久久在免费线| 久久久亚洲午夜电影| 亚洲国产成人av| 波多野结衣中文字幕一区| 91福利视频网站| 久久青草欧美一区二区三区| 亚洲国产一区二区三区青草影视| 免费成人在线网站| 99re成人精品视频| 日韩一区和二区| 一区二区三区在线观看欧美| 国产一区二区三区在线观看免费| 欧美系列一区二区| 国产精品欧美久久久久一区二区 | 亚洲精品国产视频| 国产九色sp调教91| 制服丝袜亚洲播放| 亚洲午夜精品久久久久久久久| 国产传媒久久文化传媒| 日韩午夜在线影院| 亚洲一区av在线| 日本高清视频一区二区| 国产亚洲欧洲997久久综合 | 欧美日韩一级片在线观看| 国产日韩欧美激情| 美女任你摸久久| 欧美精品久久99| 亚洲成a人片在线观看中文| a级精品国产片在线观看| 中文字幕免费不卡在线| 国产一区二区三区免费观看| 欧美大片在线观看| 免费在线观看一区| 欧美成人vps|