Esempio n. 1
0
        private void menuItem2_Click(object sender, EventArgs e)
        {
            if (ceProjectPath != "")
            {
                CloseProject();
            }
            OpenFileDialog openFileDialog1 = new OpenFileDialog();

            openFileDialog1.Filter           = "cePrj Files (*.cePrj)|*.cePrj";
            openFileDialog1.InitialDirectory = "";
            openFileDialog1.FileName         = "";
            if (openFileDialog1.ShowDialog() == DialogResult.OK)
            {
                ceProjectPath = openFileDialog1.FileName;
                myProjectPath = new FileInfo(ceProjectPath).DirectoryName;
                myProjectPath = myProjectPath + "\\";
                //open solution tree
                openTreeSolution(ceProjectPath);
                //select first page
                SelectedPage = (FormEdit)editFormList[0];
                SelectedPage.Show();
                SelectedPage.BringToFront();
                nCurrentForm = 0;
                ////register event
                RegisterEvent();
                ////create virtual device
                CreateVirtualDevice();
                ////create serial device
                thread_poll = new Thread(new ThreadStart(Poll_Thread));
                thread_poll.Start();

                ////create web server
                //CreateWebServer();
            }
        }
        private void OpenPage(string pagename)
        {
            string s = myProjectPath + pagename + ".page";

            try
            {
                //open pages form
                VisualGraph.VisualGraph vs = new VisualGraph.VisualGraph();
                vs.Name   = pagename;
                vs.Width  = 800;
                vs.Height = 480;
                //建立监控画面
                FormEdit page = new FormEdit();
                page.Name = pagename;
                page.Text = pagename;
                page.Controls.Add(vs);
                editFormList.Add(page);
                vs.LoadFromXml(s);
                //设置每个图元的lock和runmode属性
                int count = vs.ObjList.Count();
                for (int i = 0; i < count; i++)
                {
                    DrawObject o = (DrawObject)vs.ObjList[i];
                    o.RunMode = true;
                    o.Lock    = true;
                }
                vs.Invalidate();
                //select first page
                FormEdit edit = (FormEdit)editFormList[0];
                edit.Show();
                edit.BringToFront();
            }
            catch (System.Exception ex)
            {
                MessageBox.Show("Exception:" + ex.ToString(), " Open Page error.");
            }
        }