Beispiel #1
0
        public void InitThread()
        {
            GetDataHandler getdata = new GetDataHandler(GetData);

            Thread1 = new Thread(new ThreadStart(getdata));

            DealDataHandler dealdata = new DealDataHandler(DealData);

            Thread2 = new Thread(new ThreadStart(dealdata));

            ConvertDataHandler convertdata = new ConvertDataHandler(ConvertData);

            Thread3 = new Thread(new ThreadStart(convertdata));

            ShowDataHandler showdata = new ShowDataHandler(ShowData);

            Thread4 = new Thread(new ThreadStart(showdata));
        }
Beispiel #2
0
        protected void InitTable(string tableName, string data, int rowsPerPage, string pageUpButtonName,
                                 string pageDownButtonName, ParseDataHandler parseData, ShowDataHandler showData, ClearDataHandler clearData, GetDataHandler getData)
        {
            lock (this)
            {
                if (!mTableInfos.ContainsKey(tableName))
                {
                    if (parseData == null)
                    {
                        throw new Exception("解析函数不能为空");
                    }
                    else if (showData == null)
                    {
                        throw new Exception("显示函数不能为空");
                    }
                    else if (clearData == null)
                    {
                        throw new Exception("清除函数不能为空");
                    }

                    if (!string.IsNullOrEmpty(data))
                    {
                        TableInfo info = new TableInfo();
                        if (rowsPerPage > 0)
                        {
                            info.mRowsPerPage = rowsPerPage;
                        }
                        info.mCurrentPage    = 1;
                        info.mTotalPage      = (info.mTotalCount + info.mRowsPerPage - 1) / info.mRowsPerPage;
                        info.mCurrentContent = new List <string[]>();
                        info.mPageUpButton   = pageUpButtonName;
                        info.mPageDownButton = pageDownButtonName;
                        info.ParseData       = parseData;
                        info.ShowData        = showData;
                        info.ClearData       = clearData;
                        info.mAllContent     = new List <string[]>();
                        List <string[]> dataList = info.ParseData(data);
                        if (dataList != null)
                        {
                            for (int i = 0; i < dataList.Count; i++)
                            {
                                info.mAllContent.Add(dataList[i]);
                            }
                        }
                        info.mTotalCount = info.mAllContent.Count;
                        info.GetData     = defaultGetData;
                        if (getData != null)
                        {
                            info.GetData = getData;
                        }
                        mTableInfos.Add(tableName, info);
                        if (!string.IsNullOrEmpty(info.mPageUpButton) && !mMaps.ContainsKey(info.mPageUpButton))
                        {
                            mMaps.Add(info.mPageUpButton, info);
                        }
                        if (!string.IsNullOrEmpty(info.mPageDownButton) && !mMaps.ContainsKey(info.mPageDownButton))
                        {
                            mMaps.Add(info.mPageDownButton, info);
                        }
                        updateContent(info);
                    }
                }
            }
        }
 public SerialPortController(ShowDataHandler _handler)
 {
     handler = _handler;
 }
Beispiel #4
0
 public PortController(ShowDataHandler handler)
 {
     _handler = handler;
 }