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

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

?? list.c

?? CVI例程
?? C
字號(hào):
/*--------------------------------------------------------------------------*//* Toolbox List function example                                            *//*--------------------------------------------------------------------------*/#define HELP_MSG \"This example shows how to use the list functions in the Toolbox instrument\n\driver.  The Toolbox instrument can create a list which holds items of any\n\specified size.  Some of the list functions are:\n\\n\    ListType ListCreate (int Item_Size);\n\\n\    int ListNumItems (ListType List);\n\\n\    int ListInsertItem (ListType List, void *Pointer_To_Item,\n\            int Position_To_Insert_At);\n\\n\    void ListRemoveItem (ListType List, void *Item_Destination,\n\            int Position_Of_Item_To_Remove);\n\\n\    void ListGetItem (ListType List, void *Item_Destination,\n\            int Position_Of_Item_To_Get);\n\\n\    void * CVIFUNC ListGetPtrToItem(ListType list, int itemPosition);\n\\n\    void ListDispose (int Item_Size);\n\\n\\n\This example uses a structure containing 3 members as a list item and allows\n\you to display, add, and remove items from the list."/*---------------------------------------------------------------------------*//* Includes                                                                  *//*---------------------------------------------------------------------------*/#include <utility.h>#include <userint.h>#include "toolbox.h"#include "list.h"/*---------------------------------------------------------------------------*//* Defines                                                                   *//*---------------------------------------------------------------------------*/#define SIZEOF_STRING_MEMBER 256/*---------------------------------------------------------------------------*//* Variables                                                                 *//*---------------------------------------------------------------------------*/static int panelHandle;static ListType myList = 0;/*  Create an arbitrary structure to use in list*/typedef struct MyStructRec           {       int integerValue;    double doubleValue;    char* stringValue;} tMyStruct;        tMyStruct *pMyStruct;/*---------------------------------------------------------------------------*//* Prototypes                                                                *//*---------------------------------------------------------------------------*/int CreateMyList(void);int DestroyMyList(void);int DimControls(void);int UpdateUIR(void);        /*---------------------------------------------------------------------------*//* Main                                                                      *//*---------------------------------------------------------------------------*/int main (int argc, char *argv[]){    if (InitCVIRTE (0, argv, 0) == 0)   /* Initialize CVI libraries */        return -1;  /* out of memory */            if ((panelHandle = LoadPanel (0, "list.uir", PANEL)) < 0)        return -1;            /*Create list and generate default items in List */    if (!CreateMyList())        goto Leave;            DimControls();        DisplayPanel (panelHandle);    RunUserInterface ();    Leave:    /* Destroy list */    DestroyMyList();        return 0;   }/*---------------------------------------------------------------------------*//* CreateMyList                                                              *//*---------------------------------------------------------------------------*/int CreateMyList(void){    tMyStruct tempItem;    int item;        /* Create a list and specify the size of each item in the list */    myList = ListCreate (sizeof(tMyStruct));    if (!myList)    {        MessagePopup("ListCreate", "Error allocating memory for list");        goto Leave;    }           /* Fill list with 10 values */    for (item=1; item<=10; item++)    {        tempItem.integerValue = item;        tempItem.doubleValue = item*5.0;        tempItem.stringValue = calloc(SIZEOF_STRING_MEMBER, 1);                if (!tempItem.stringValue)            goto Leave;                    sprintf(tempItem.stringValue, "String Entry %d", item);            /* Add each element of the structure to the list */        if (!ListInsertItem (myList, &tempItem, END_OF_LIST))         {            MessagePopup("","Error Inserting Item");            goto Leave;        }    }        /* Update UIR */    SetCtrlVal(panelHandle, PANEL_DISPLAYITEM, 1);    UpdateUIR();        return 1;    Leave:        return 0;    }/*---------------------------------------------------------------------------*//* DestroyMyList                                                             *//*---------------------------------------------------------------------------*/int DestroyMyList(void){    int error;    int numItems;    int item;        tMyStruct *tempItem;        /* Get the number of items in list */    numItems = ListNumItems (myList);        /* Access each item and free the malloc'd memory string and remove from list */    for (item=numItems; item>0; item--)    {        tempItem = ListGetPtrToItem (myList, item);                if (tempItem)         {            if (tempItem->stringValue)                free (tempItem->stringValue);                    ListRemoveItem (myList, 0, item);        }        }                   ListDispose (myList);    myList = 0;        return 1;}/*---------------------------------------------------------------------------*//* DimControls                                                               *//*---------------------------------------------------------------------------*/int DimControls(void){    int numItems;        if (!myList)         return 0;                /* Create a list and specify the size of each item in the list */    numItems = ListNumItems (myList);    SetCtrlAttribute(panelHandle, PANEL_ITEMDOUBLE , ATTR_DIMMED,  (!numItems));    SetCtrlAttribute(panelHandle, PANEL_ITEMINTEGER, ATTR_DIMMED,  (!numItems));    SetCtrlAttribute(panelHandle, PANEL_ITEMSTRING , ATTR_DIMMED,  (!numItems));    SetCtrlAttribute(panelHandle, PANEL_DISPLAYITEM, ATTR_DIMMED,  (!numItems));    SetCtrlAttribute(panelHandle, PANEL_DELETEITEM , ATTR_DIMMED,  (!numItems));    return 1;}/*---------------------------------------------------------------------------*//* UpdateUIR                                                                 *//*---------------------------------------------------------------------------*/int UpdateUIR(void) {    int numItems;    int currentItem;    tMyStruct *tempItem;        if (!myList)         numItems = 0;        else         numItems = ListNumItems (myList);        SetCtrlVal(panelHandle, PANEL_TOTALITEMS, numItems);    SetCtrlAttribute (panelHandle, PANEL_DISPLAYITEM, ATTR_MIN_VALUE, (numItems)?1:0);    SetCtrlAttribute(panelHandle, PANEL_DISPLAYITEM, ATTR_MAX_VALUE, (numItems)?numItems:0);        GetCtrlVal(panelHandle, PANEL_DISPLAYITEM, &currentItem);    if (currentItem>0)     {        tempItem = ListGetPtrToItem (myList, currentItem);            if (tempItem)        {            SetCtrlVal(panelHandle, PANEL_ITEMINTEGER, tempItem->integerValue);            SetCtrlVal(panelHandle, PANEL_ITEMDOUBLE,  tempItem->doubleValue);            SetCtrlVal(panelHandle, PANEL_ITEMSTRING,  tempItem->stringValue);        }    }       DimControls();        return 1;}/*---------------------------------------------------------------------------*//* DeleteItemCallback                                                        *//*---------------------------------------------------------------------------*/int CVICALLBACK DeleteItemCallback (int panel, int control, int event,        void *callbackData, int eventData1, int eventData2){    tMyStruct *tempItem;    int currentItem;        switch (event) {        case EVENT_COMMIT:            if (!myList)                return 0;                GetCtrlVal(panel, PANEL_DISPLAYITEM, &currentItem);                        tempItem = ListGetPtrToItem (myList, currentItem);            if (tempItem)             {                if (tempItem->stringValue)                    free (tempItem->stringValue);                                    ListRemoveItem (myList, 0, currentItem);                                /* Update the UIR */                                SetCtrlVal(panel, PANEL_DISPLAYITEM, currentItem-1);                UpdateUIR();            }                            break;    }    return 0;}/*---------------------------------------------------------------------------*//* NewItemCallback                                                           *//*---------------------------------------------------------------------------*/int CVICALLBACK NewItemCallback (int panel, int control, int event,        void *callbackData, int eventData1, int eventData2){    tMyStruct tempItem;    int currentItem;        switch (event) {        case EVENT_COMMIT:            if (!myList)                return 0;                GetCtrlVal(panel, PANEL_DISPLAYITEM, &currentItem);                        tempItem.integerValue = 0;            tempItem.doubleValue = 0.0;            tempItem.stringValue = calloc(SIZEOF_STRING_MEMBER, 1);                if (!tempItem.stringValue)                goto Leave;                    sprintf(tempItem.stringValue, "");            /* Add each element of the structure to the list */            if (!ListInsertItem (myList, &tempItem, currentItem+1))                 goto Leave;                            /* Update the UIR */                            SetCtrlVal(panel, PANEL_DISPLAYITEM, currentItem+1);            UpdateUIR();                        break;    }        return 0;    Leave:    MessagePopup("Add New Item","Error Inserting Item");    if (!tempItem.stringValue)         free (tempItem.stringValue);            return 0;}/*---------------------------------------------------------------------------*//* ChangeItemCallback                                                        *//*---------------------------------------------------------------------------*/int CVICALLBACK ChangeItemCallback (int panel, int control, int event,        void *callbackData, int eventData1, int eventData2){    switch (event) {        case EVENT_COMMIT:            if (myList)                UpdateUIR();            break;    }    return 0;}/*---------------------------------------------------------------------------*//* ChangeItemValueCallback                                                   *//*---------------------------------------------------------------------------*/int CVICALLBACK ChangeItemValueCallback (int panel, int control, int event,        void *callbackData, int eventData1, int eventData2){    tMyStruct *tempItem;    int currentItem;        switch (event) {        case EVENT_COMMIT:            if (!myList)                return 0;                GetCtrlVal(panel, PANEL_DISPLAYITEM, &currentItem);                        tempItem = ListGetPtrToItem (myList, currentItem);            if (tempItem)             {                if (control == PANEL_ITEMINTEGER)                     GetCtrlVal(panel, PANEL_ITEMINTEGER, &tempItem->integerValue);                else if (control == PANEL_ITEMDOUBLE)                     GetCtrlVal(panel, PANEL_ITEMDOUBLE, &tempItem->doubleValue);                else if (control == PANEL_ITEMSTRING)                     GetCtrlVal(panel, PANEL_ITEMSTRING, tempItem->stringValue);            }                            break;    }    return 0;}/*---------------------------------------------------------------------------*//* QuitCallback                                                              *//*---------------------------------------------------------------------------*/int CVICALLBACK QuitCallback (int panel, int control, int event,        void *callbackData, int eventData1, int eventData2){    switch (event) {        case EVENT_COMMIT:            QuitUserInterface (0);            break;    }    return 0;}/*---------------------------------------------------------------------------*//* HelpCallback                                                              *//*---------------------------------------------------------------------------*/int CVICALLBACK HelpCallback (int panel, int control, int event,        void *callbackData, int eventData1, int eventData2){    switch (event) {        case EVENT_RIGHT_CLICK:        case EVENT_COMMIT:            MessagePopup ("Toolbox List Example Program", HELP_MSG);        break;    }    return 0;}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91色porny| 亚洲免费av观看| 91精品在线免费观看| 欧美色网一区二区| 日本精品裸体写真集在线观看| 国产高清在线精品| 国产精品香蕉一区二区三区| 国产精品一区在线观看乱码| 国产大片一区二区| 成人成人成人在线视频| 99免费精品在线| 日本久久一区二区三区| 欧美亚男人的天堂| 91精品婷婷国产综合久久性色 | 久久五月婷婷丁香社区| 精品入口麻豆88视频| 久久婷婷色综合| 久久久99精品久久| 中文字幕在线一区| 一区二区三区在线看| 亚洲第一主播视频| 日韩不卡一区二区三区| 久久aⅴ国产欧美74aaa| 国产v综合v亚洲欧| 91麻豆国产在线观看| 欧美三级资源在线| 精品日韩一区二区三区| 国产精品系列在线| 亚洲一区二区三区四区不卡| 日本成人中文字幕在线视频| 国产精品一区二区三区网站| 日韩欧美在线1卡| 精品动漫一区二区三区在线观看| 国产亚洲欧美日韩俺去了| 日韩美女视频一区二区| 日韩精品91亚洲二区在线观看| 国产一区三区三区| 色综合久久88色综合天天6| 欧美精品18+| 久久香蕉国产线看观看99| 亚洲男人电影天堂| 久久成人免费日本黄色| 91偷拍与自偷拍精品| 在线播放91灌醉迷j高跟美女| 日韩精品一区二区三区swag | 成人午夜激情在线| 欧美手机在线视频| 久久久三级国产网站| 亚洲一区二区精品3399| 国产一区二区视频在线播放| 91免费视频大全| 日韩欧美综合在线| 亚洲人成电影网站色mp4| 免费不卡在线视频| 色综合久久99| 国产亚洲欧美日韩在线一区| 亚洲va天堂va国产va久| 国产99久久久久久免费看农村| 在线观看视频一区| 久久久不卡网国产精品一区| 亚洲一区二区三区四区五区中文| 国产高清在线观看免费不卡| 欧美精品一卡二卡| 亚洲视频在线观看一区| 另类小说图片综合网| 欧美一a一片一级一片| 国产色综合一区| 蜜臀久久99精品久久久画质超高清 | 国产suv精品一区二区三区| 欧美日韩性生活| 国产精品久久久久久久久快鸭| 免费观看成人av| 欧美日韩一区二区三区在线看| 国产精品网站导航| 国产在线国偷精品免费看| 91麻豆精品国产91久久久资源速度 | 久久久久国产精品免费免费搜索| 亚洲va在线va天堂| 91同城在线观看| 国产精品丝袜在线| 激情五月婷婷综合| 欧美一区二区三区精品| 亚洲成人午夜影院| 色婷婷亚洲精品| 最新中文字幕一区二区三区| 国模套图日韩精品一区二区 | 亚洲国产高清aⅴ视频| 久久99热这里只有精品| 欧美日韩综合在线免费观看| 亚洲色图第一区| 成人午夜精品在线| 日本一区二区三区电影| 国产不卡在线视频| 国产一区二区91| 91精品国产综合久久精品麻豆| 亚洲综合丝袜美腿| 色婷婷国产精品综合在线观看| 国产精品剧情在线亚洲| 成人激情免费电影网址| 中文乱码免费一区二区| 成人av免费在线| 亚洲欧洲一区二区在线播放| 成人av先锋影音| 最新国产成人在线观看| av中文字幕在线不卡| 亚洲欧洲日韩综合一区二区| 99精品视频一区二区三区| 国产精品理论片| 91麻豆产精品久久久久久| 亚洲精品中文在线观看| 色菇凉天天综合网| 亚洲激情一二三区| 欧美亚洲愉拍一区二区| 天堂资源在线中文精品| 欧美疯狂做受xxxx富婆| 麻豆国产精品777777在线| 精品免费视频一区二区| 国产乱码精品一品二品| 亚洲国产精品99久久久久久久久| av电影在线观看一区| 一区二区三区久久| 欧美精品在欧美一区二区少妇| 美女诱惑一区二区| 2020国产精品自拍| www.日韩大片| 一区二区三区在线高清| 欧美日本韩国一区| 久久成人综合网| 国产精品毛片大码女人| 欧美性一二三区| 久久国产视频网| 国产精品美女久久久久久| 一本一本大道香蕉久在线精品| 午夜久久福利影院| 精品国产凹凸成av人网站| 成人不卡免费av| 午夜精品成人在线| 国产日韩一级二级三级| 91亚洲精品一区二区乱码| 亚洲成人av在线电影| 久久你懂得1024| 在线视频你懂得一区| 麻豆精品一区二区三区| 国产精品国产馆在线真实露脸| 欧美日本视频在线| 国产不卡在线视频| 婷婷亚洲久悠悠色悠在线播放 | 午夜av一区二区三区| 精品国产伦一区二区三区观看体验 | 成人精品国产一区二区4080| 亚洲电影中文字幕在线观看| 久久男人中文字幕资源站| 色狠狠桃花综合| 国产曰批免费观看久久久| 一区二区三区不卡视频 | 日日骚欧美日韩| 欧美国产国产综合| 欧美日韩国产美| eeuss鲁一区二区三区| 天使萌一区二区三区免费观看| 国产亚洲精品免费| 欧美精品丝袜中出| 不卡电影一区二区三区| 美日韩一区二区| 一区二区三区中文字幕电影| 久久精品日产第一区二区三区高清版| 欧美日韩一区二区三区免费看| 精品国产青草久久久久福利| 色妞www精品视频| 国产精品一区二区在线看| 亚洲成人av福利| 亚洲日本在线a| 久久久精品国产免大香伊| 欧美精品第1页| 日本高清不卡视频| 不卡免费追剧大全电视剧网站| 久久国产精品第一页| 亚洲成人精品在线观看| 中文字幕亚洲精品在线观看| 2欧美一区二区三区在线观看视频| 欧美视频一区二区三区在线观看| 成人美女在线视频| 国产伦精品一区二区三区在线观看| 日韩高清欧美激情| 亚洲一区在线看| 樱花草国产18久久久久| 国产精品免费久久| 久久久久九九视频| 精品久久久三级丝袜| 日韩一区二区三区av| 欧美肥胖老妇做爰| 欧美日韩精品三区| av亚洲精华国产精华精| 成人综合在线观看| 国产精品一二三在| 国产在线看一区| 九九精品一区二区| 久久精品国产秦先生| 免费一级欧美片在线观看| 石原莉奈在线亚洲二区|