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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? menufunc.c

?? 占用內(nèi)存極少的菜單程序
?? C
字號:
/******************************************************************************
 * MenuFunc.C - "功能"菜單 條項動態(tài)生成代碼
 *
 *
 * DESCRIPTION: -
 *
 * modification history
 * --------------------
 * 01a, 04/sep/2007, 梁炎昌 written
 * --------------------
 ******************************************************************************/
#include "CPU.H"

#include "Ks0108.H"
#include "Menu.H"
#include "KeyScan.H"


//功能
//Bar型菜單
void DispMenuFuncInit()
{
//--------------------
    GUI_Clear();
//--------------------
    BarMenu = &MenuFunc[language];
    ItemNum = (*BarMenu).TextNum;
    DispItem = (*BarMenu).Text;

    //顯示按鍵對應(yīng)的文字提示,1-->"進入"
    GUI_DispStringAtBar(*(Tip[language].Text+1),0,Enter_PosY,126,GUI_TA_HCENTER);

    //用戶定義的初始化代碼請放在這里
    BarMenuInit();//調(diào)用公共初始化的代碼
}

void DispMenuFuncUp()
{

    switch(Item){
        case 0:{
#ifdef  DynamicBar
            Jump2Menu(MenuDataIndex,FlashMode_AutoInit);
#else
            Jump2Menu(SelfMenuIndex,FlashMode_NoAction);
#endif                        

            break;
        }
        case 1:{
            Jump2Menu(SelfMenuIndex,FlashMode_NoAction);
            break;
        }
        default:{
            Jump2Menu(SelfMenuIndex,FlashMode_NoAction);
            break;
        }
    }

}
void DispMenuFuncDown()
{
    POP();
}

void DispMenuFuncLeft()
{
    BarMenuLeft();
}
void DispMenuFuncRight()
{
    BarMenuRight();
}





#ifdef DynamicBar


//------------------------------------------------
#define DataItemSize 8
U8 DataItem[DispMax][DataItemSize]=
{
{"DataX  "},
{"DataX  "},
{"DataX  "},
};


U8 *_CONST_ DataItem_p[]=
{
DataItem[0],
DataItem[1],
DataItem[2]
};


U8 DynamicItem;
U8 MaxDynamicItem = 0;

/*
實現(xiàn)動態(tài)數(shù)據(jù)顯示的最簡單的方式設(shè)定一定大小的緩沖,而后填充數(shù)據(jù),但這樣把可以顯示的項限制了。這個方法對于維護來說是最為簡單的
2006/08/27
如何利用有限緩沖來實現(xiàn)動態(tài)數(shù)據(jù)的條項層顯示?
比如僅僅緩沖液晶可以顯示的條項數(shù)目,然后發(fā)現(xiàn)上/下越界了,就刷新緩沖?
但這樣就要重新另外寫類似BarMenuLeft等函數(shù)來維護顯示
*/
/*
這里使用一個僅僅跟LCD顯示條項數(shù)目一致的緩沖區(qū)來緩沖動態(tài)生成的條項
當(dāng)實際條項數(shù)目MaxDynamicItem<=DispMax時 函數(shù)BarMenuLeft BarMenuRight工作正常
而當(dāng)MaxDynamicItem>DispMax時,我們設(shè)ItemNum = DispMax,在原本的代碼中,這意味著LCD剛剛能顯示所有的項
于是一旦到了頂部上翻時就反顯底部,到了底部下翻時就反顯頂部 但是事實上的項的數(shù)目不是ItemNum!而是MaxDynamicItem
我們期望的行為是頂部上翻時,修改底部的項為新的項的數(shù)據(jù),屏幕整個刷新(底部下翻類似)
做法是設(shè)ItemNum = DispMax 并讓上下翻的行為跟 ItemNum > DispMax時的行為一致,跟蹤位置動態(tài)修改顯示內(nèi)容
*/
void DispMenuDataInit(void)
{
    U8 Menu_j;          //計數(shù)變量
    U8 *ChangeDispItem; //項顯示內(nèi)容指針
//----------------------
    GUI_Clear();
//--------------------
    GUI_Delay(100);
//    do{
//        MaxDynamicItem = InputNum(4,4,9);//要求輸入一個動態(tài)菜單的值,我們根據(jù)這個值生成菜單
        MaxDynamicItem = 8;
//        if(MaxDynamicItem == 0xFF){//退出
//            Jump2Menu(SelfMenuIndex,FlashMode_AutoInit);
// //           ReFlash = true;
//            return;
//        }
//    }while(MaxDynamicItem ==0x00);//大于0才有效

//    GUI_Clear();
    DynamicItem = 0;

    if(MaxDynamicItem >DispMax){//需要顯示的項數(shù)比液晶可以顯示的多
        ItemNum = DispMax;
        //08/29
        BarDataMode = DynamicData;//通知BarMenuLeft和BarMenuRight函數(shù)現(xiàn)在的數(shù)據(jù)是動態(tài)數(shù)據(jù)
        //當(dāng)ItemNum == DispMax時,默認(rèn)的顯示方式是到頭了直接跳到尾部的(到尾部了直接跳到頭部的)
        //但是既然這是動態(tài)內(nèi)容的話,而且實際上的項是MaxDynamicItem不少于DispMax,應(yīng)當(dāng)翻滾顯示的,通過修正BarDataMode這個標(biāo)志
        //通知BarMenuLeft和BarMenuRight
    } else {
        ItemNum = MaxDynamicItem;
    }


    for(Menu_j = 0;Menu_j < ItemNum; Menu_j++){//初始化動態(tài)內(nèi)容
       ChangeDispItem = (U8 *)&DataItem[Menu_j];
        *(ChangeDispItem + 4) = Menu_j+'0';
//        *(DataItem_p[Menu_j]+4)       = Menu_j+'0';
    }


    DispItem = (U8 **)DataItem_p;


    //顯示按鍵對應(yīng)的文字提示,2-->"OK"
    GUI_DispStringAtBar(*(Tip[language].Text+1),0,Enter_PosY,126,GUI_TA_HCENTER);
    BarMenuInit();
    Bar(DynamicItem,MaxDynamicItem,MenuBarPosX,MenuBarNumPosX);                  //維護滾動條
}

void DispMenuDataUp()
{
    //沒有動作,停留在本層菜單
    Jump2Menu(SelfMenuIndex,FlashMode_NoAction);
}
void DispMenuDataDown()
{
    //08/29
    BarDataMode = FixedData;
    POP();
}

void DispMenuDataLeft()
{
    U8 *ChangeDispItem; //項顯示內(nèi)容指針
    U8 ItemBackup;
    if(DynamicItem == 0){//
        DynamicItem = MaxDynamicItem-1;
    } else {
        DynamicItem--;
    }

    if(Where == 0){//頂部上移,需要修改數(shù)據(jù)
        if (Item == 0) {//獲得Item
            ItemBackup = ItemNum-1;
        } else {
            ItemBackup = Item-1;
        }
        ChangeDispItem = (U8*)&DataItem[ItemBackup];
        *(ChangeDispItem + 4) = DynamicItem+'0';
    }
    BarMenuLeft();//

    Bar(DynamicItem,MaxDynamicItem,MenuBarPosX,MenuBarNumPosX);                  //維護滾動條
}
void DispMenuDataRight()
{
    U8 *ChangeDispItem; //項顯示內(nèi)容指針
    U8 ItemBackup;
    if(DynamicItem == MaxDynamicItem-1){//維護實際的Item值
        DynamicItem = 0;
    } else {
        DynamicItem++;
    }

    if(Where == (DispMin-1)){//底部下移,需要修改數(shù)據(jù)
        if (Item == (ItemNum-1)) {//獲得Item
            ItemBackup = 0;
        } else {
            ItemBackup = Item + 1;
        }
        ChangeDispItem = (U8*)&DataItem[ItemBackup];//獲得修改位置
        *(ChangeDispItem + 4) = DynamicItem+'0';
    }
    BarMenuRight();
    Bar(DynamicItem,MaxDynamicItem,MenuBarPosX,MenuBarNumPosX);                  //維護滾動條
}
#endif

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91丨九色丨尤物| 1区2区3区精品视频| 中文成人综合网| 日日嗨av一区二区三区四区| 国内外成人在线| 日本一区免费视频| 久久国产综合精品| 欧美三级蜜桃2在线观看| 欧美激情一区二区三区全黄| 日韩成人精品视频| 91福利社在线观看| 国产精品毛片久久久久久| 免费看欧美女人艹b| 欧亚洲嫩模精品一区三区| 欧美国产一区二区| 国产精品亚洲а∨天堂免在线| 制服丝袜激情欧洲亚洲| 亚洲影视在线播放| 91影院在线观看| 国产女人18毛片水真多成人如厕| 免费黄网站欧美| 日韩视频一区在线观看| 午夜精品成人在线视频| 欧洲另类一二三四区| 国产精品美女久久久久久久| 国产综合色在线视频区| 欧美一级欧美一级在线播放| 亚洲成a人片综合在线| 日本高清不卡视频| 亚洲激情在线激情| 在线观看中文字幕不卡| 一区二区三区欧美在线观看| 91在线精品秘密一区二区| 日本一区二区成人| 99久久99精品久久久久久| 中文字幕一区二区三区av| 不卡高清视频专区| 亚洲人成网站在线| 91国偷自产一区二区三区成为亚洲经典 | 日韩一区二区三区观看| 亚洲福利视频导航| 亚洲特黄一级片| 97久久人人超碰| 亚洲综合av网| 欧美日韩日日摸| 久久国产精品色婷婷| 精品国产一区二区三区av性色 | 欧美一区二区免费观在线| 免费国产亚洲视频| 久久先锋影音av鲁色资源| 国产精品综合一区二区三区| 中文字幕巨乱亚洲| 在线观看一区日韩| 日本大胆欧美人术艺术动态| 日韩精品自拍偷拍| 国产一区二区三区最好精华液| 国产亚洲欧美日韩俺去了| eeuss国产一区二区三区| 亚洲你懂的在线视频| 欧美日韩亚洲综合在线| 青青草原综合久久大伊人精品 | 亚洲欧洲性图库| 精品视频一区三区九区| 免费xxxx性欧美18vr| 日本一区二区视频在线观看| 欧美中文字幕一区二区三区 | 亚洲成人自拍网| 精品免费99久久| 色先锋资源久久综合| 肉色丝袜一区二区| 国产欧美日本一区视频| 在线观看av一区| 国产精品99久久不卡二区| 亚洲另类一区二区| 久久久综合视频| 欧美精品乱码久久久久久| 国产一区视频导航| 亚洲福利视频一区| 国产精品成人免费| 精品少妇一区二区三区在线播放 | 三级一区在线视频先锋| 中文字幕亚洲区| 精品区一区二区| 欧美色图激情小说| 成人精品一区二区三区中文字幕| 亚洲一区二区四区蜜桃| 国产夜色精品一区二区av| 欧美丰满少妇xxxxx高潮对白| 国产成人精品综合在线观看| 亚洲成a人v欧美综合天堂| 国产女人18毛片水真多成人如厕| 欧美伦理电影网| 色综合天天综合狠狠| 91精品国产综合久久福利软件| 成人免费va视频| 激情久久五月天| 天天操天天色综合| 一级做a爱片久久| 中文av一区特黄| 久久精品在这里| 久久综合精品国产一区二区三区| 欧美性xxxxxx少妇| 91麻豆国产在线观看| 国产99精品视频| 国内久久婷婷综合| 韩国一区二区三区| 另类小说欧美激情| 秋霞国产午夜精品免费视频 | 久久综合九色综合欧美就去吻| 欧美一区二区视频观看视频| 欧美日韩一区三区| 欧美手机在线视频| 在线观看视频一区| 一本色道久久综合精品竹菊| 丁香五精品蜜臀久久久久99网站| 国内成人精品2018免费看| 蜜桃久久av一区| 理论片日本一区| 精品一区二区免费| 国产精品亚洲人在线观看| 久久成人久久爱| 国产综合成人久久大片91| 美女性感视频久久| 国产精品一二二区| 成人动漫在线一区| 91香蕉视频黄| 色999日韩国产欧美一区二区| 色哟哟一区二区在线观看| 在线观看精品一区| 欧美亚洲一区三区| 欧美一级一区二区| 国产午夜久久久久| 国产精品视频yy9299一区| 亚洲精品亚洲人成人网| 爽爽淫人综合网网站| 精品一区二区三区久久| 成人天堂资源www在线| 一本大道久久a久久综合 | 色丁香久综合在线久综合在线观看| 色噜噜久久综合| 欧美人妇做爰xxxⅹ性高电影 | 青青草97国产精品免费观看 | 一区二区视频在线| 日韩国产欧美在线播放| 国产精品一区二区在线看| 91色.com| 日韩欧美国产一二三区| 久久日一线二线三线suv| 国产精品无人区| 五月天国产精品| 国产精品456| 在线观看www91| 26uuu精品一区二区在线观看| 中文字幕一区二区三区视频 | 最新欧美精品一区二区三区| 午夜激情久久久| 国产91丝袜在线播放九色| 日本高清无吗v一区| 精品电影一区二区三区| 亚洲天堂免费看| 精品一区二区三区免费| 国产精品人妖ts系列视频| 亚洲一区二区在线视频| 国产精品一区二区视频| 欧美在线三级电影| 国产精品网站导航| 蜜桃视频一区二区三区| 一本一道久久a久久精品| 欧美mv日韩mv国产| 午夜欧美电影在线观看| 国产成人一区在线| 欧美一区二区网站| 一区二区三区在线看| 国精产品一区一区三区mba桃花| 欧美三级资源在线| 亚洲丝袜精品丝袜在线| 国产精品123区| 精品久久久久久久久久久久包黑料 | 亚洲狠狠爱一区二区三区| 粉嫩高潮美女一区二区三区| 日韩一区二区三区三四区视频在线观看| 亚洲欧美在线另类| 国产99久久久精品| 日韩女优毛片在线| 日韩高清在线观看| 欧美日韩国产高清一区二区三区 | 在线免费不卡电影| 国产精品欧美经典| 国产成人在线视频网址| 日韩你懂的在线观看| 视频一区在线视频| 欧美日韩激情一区| 亚洲成在线观看| 欧美日韩一区精品| 亚洲一区二区三区视频在线播放| 97精品久久久久中文字幕| 国产精品护士白丝一区av| 国产成人精品综合在线观看 | 国产在线观看一区二区| 精品国产一区二区国模嫣然|