Beispiel #1
0
        public void ConInit(WDataToolClass mWDataToolClass, string GroupName = "")
        {
            this.mWDataToolClass = mWDataToolClass;

            int       rtn = 0;
            DataTable dt;

            rtn = mWDataToolClass.SelectShowAxis(out dt, GroupName);
            if (rtn != 0)
            {
                MessageBox.Show("SelectShowModel");
            }
            lvAxisView.Columns.Add("轴名称", 120, HorizontalAlignment.Left);
            lvAxisView.Columns.Add("负限位", 60, HorizontalAlignment.Center);
            lvAxisView.Columns.Add("正限位", 60, HorizontalAlignment.Center);
            lvAxisView.Columns.Add("报警", 60, HorizontalAlignment.Center);
            lvAxisView.Columns.Add("复位", 60, HorizontalAlignment.Center);
            lvAxisView.Columns.Add("使能", 60, HorizontalAlignment.Center);
            lvAxisView.Columns.Add("实际位置", 60, HorizontalAlignment.Center);
            lvAxisView.Columns.Add("规划位置", 60, HorizontalAlignment.Center);



            string        mGroupName = "";
            ListViewGroup mHeader    = new ListViewGroup();
            ListViewItem  mLvi;

            foreach (DataRow row in dt.Rows)
            {
                //创建列表组名并添加
                if (mGroupName != row[0].ToString())
                {
                    mGroupName              = row[0].ToString();
                    mHeader                 = new ListViewGroup();
                    mHeader.Header          = mGroupName;
                    mHeader.HeaderAlignment = HorizontalAlignment.Left;
                    lvAxisView.Groups.Add(mHeader);
                    lvAxisView.ShowGroups = true;
                }
                //添加数据
                mLvi = new ListViewItem();
                mLvi.UseItemStyleForSubItems = false;//设置可以改变单元格背景颜色
                mLvi.Text = row[1].ToString();
                mLvi.SubItems.Add("").BackColor = Color.Gray;
                mLvi.SubItems.Add("").BackColor = Color.Gray;
                mLvi.SubItems.Add("").BackColor = Color.Red;
                mLvi.SubItems.Add("").BackColor = Color.Gray;
                mLvi.SubItems.Add("").BackColor = Color.Gray;
                mLvi.SubItems.Add("0");
                mLvi.SubItems.Add("0");
                //添加到列表
                mHeader.Items.Add(mLvi);
                lvAxisView.Items.Add(mLvi);
            }
            tSignalRefresh.Enabled = true;
        }
Beispiel #2
0
        public void ConInit(WDataToolClass mWDataToolClass)
        {
            this.mWDataToolClass = mWDataToolClass;

            int rtn = 0;

            rtn = mWDataToolClass.SelectShowAxis(ref dgvAxis);
            if (rtn != 0)
            {
                MessageBox.Show("SelectShowAxis");
            }
            rtn = mWDataToolClass.SelectShowDI(ref dgvDI);
            if (rtn != 0)
            {
                MessageBox.Show("SelectShowAxis");
            }
            rtn = mWDataToolClass.SelectShowDO(ref dgvDO);
            if (rtn != 0)
            {
                MessageBox.Show("SelectShowAxis");
            }
        }
Beispiel #3
0
        private void btnAxisAddOk_Click(object sender, EventArgs e)
        {
            String GroupName = "";
            String Name      = "";
            Int32  CardNum   = 0;
            Int32  AxisNum   = 0;
            Int32  Pulse     = 0;
            Int32  Acc       = 0;
            Int32  Speed     = 0;
            Int32  ResetNum  = 0;

            try
            {
                if (dgvAxisAdd.Rows.Count > 0)
                {
                    //检查数据
                    for (int i = 0; i < dgvAxisAdd.Rows.Count - 1; i++)
                    {
                        //检查数据是否为空
                        if (dgvAxisAdd.Rows[i].Cells[0].Value == null)
                        {
                            MessageBox.Show("第" + (i + 1).ToString() + "行的组名称为空,请检查");
                            return;
                        }
                        if (dgvAxisAdd.Rows[i].Cells[1].Value == null)
                        {
                            MessageBox.Show("第" + (i + 1).ToString() + "行的轴名称为空,请检查");
                            return;
                        }
                        if (dgvAxisAdd.Rows[i].Cells[2].Value == null)
                        {
                            MessageBox.Show("第" + (i + 1).ToString() + "行的卡号未选择,请检查");
                            return;
                        }
                        if (dgvAxisAdd.Rows[i].Cells[3].Value == null)
                        {
                            MessageBox.Show("第" + (i + 1).ToString() + "行的轴号未选择,请检查");
                            return;
                        }
                        if (dgvAxisAdd.Rows[i].Cells[4].Value != null && !int.TryParse(dgvAxisAdd.Rows[i].Cells[4].Value.ToString(), out Speed))
                        {
                            MessageBox.Show("第" + (i + 1).ToString() + "行的脉冲当量不是整数,请检查");
                            return;
                        }
                        if (dgvAxisAdd.Rows[i].Cells[5].Value != null && !int.TryParse(dgvAxisAdd.Rows[i].Cells[5].Value.ToString(), out Acc))
                        {
                            MessageBox.Show("第" + (i + 1).ToString() + "行的加速度不是整数,请检查");
                            return;
                        }
                        if (dgvAxisAdd.Rows[i].Cells[6].Value != null && !int.TryParse(dgvAxisAdd.Rows[i].Cells[6].Value.ToString(), out Speed))
                        {
                            MessageBox.Show("第" + (i + 1).ToString() + "行的速度不是整数,请检查");
                            return;
                        }
                        if (dgvAxisAdd.Rows[i].Cells[7].Value == null)
                        {
                            MessageBox.Show("第" + (i + 1).ToString() + "行的复位顺序未选择,请检查");
                            return;
                        }
                        //检查是否已经存在重复数据
                        Name    = dgvAxisAdd.Rows[i].Cells[1].Value.ToString();
                        CardNum = int.Parse(dgvAxisAdd.Rows[i].Cells[2].Value.ToString());
                        AxisNum = int.Parse(dgvAxisAdd.Rows[i].Cells[3].Value.ToString());
                        if (mWDataToolClass.SelectShowAxisCheck(" Name='" + Name + "'") == 1)
                        {
                            MessageBox.Show("第" + (i + 1).ToString() + "行的轴名称:" + Name + ";已存在,请检查");
                            return;
                        }
                        if (mWDataToolClass.SelectShowAxisCheck(" CardNum=" + CardNum + " And AxisNum=" + AxisNum) == 1)
                        {
                            MessageBox.Show("第" + (i + 1).ToString() + "行的卡号和轴号已存在,请检查");
                            return;
                        }
                        //增加的数据判断
                        int numRepeatName = 0;
                        int numRepeatCA   = 0;
                        for (int j = 0; j < dgvAxisAdd.Rows.Count - 1; j++)
                        {
                            if (i != j)
                            {
                                if (Name == dgvAxisAdd.Rows[j].Cells[1].Value.ToString())
                                {
                                    numRepeatName++;
                                }
                                if (CardNum == int.Parse(dgvAxisAdd.Rows[j].Cells[2].Value.ToString()) &&
                                    AxisNum == int.Parse(dgvAxisAdd.Rows[j].Cells[3].Value.ToString()))
                                {
                                    numRepeatCA++;
                                }
                            }
                        }
                        if (numRepeatName > 0)
                        {
                            MessageBox.Show("第" + (i + 1).ToString() + "行的轴名称有重复,请检查");
                            return;
                        }
                        if (numRepeatCA > 0)
                        {
                            MessageBox.Show("第" + (i + 1).ToString() + "行的卡号和轴号有重复,请检查");
                            return;
                        }
                    }
                    //把所有数据插入
                    for (int i = 0; i < dgvAxisAdd.Rows.Count - 1; i++)
                    {
                        GroupName = dgvAxisAdd.Rows[i].Cells[0].Value.ToString();
                        Name      = dgvAxisAdd.Rows[i].Cells[1].Value.ToString();
                        CardNum   = int.Parse(dgvAxisAdd.Rows[i].Cells[2].Value.ToString());
                        AxisNum   = int.Parse(dgvAxisAdd.Rows[i].Cells[3].Value.ToString());
                        if (dgvAxisAdd.Rows[i].Cells[4].Value == null)
                        {
                            Pulse = 100;
                        }
                        else
                        {
                            Pulse = int.Parse(dgvAxisAdd.Rows[i].Cells[4].Value.ToString());
                        }
                        if (dgvAxisAdd.Rows[i].Cells[5].Value == null)
                        {
                            Acc = 100;
                        }
                        else
                        {
                            Acc = int.Parse(dgvAxisAdd.Rows[i].Cells[5].Value.ToString());
                        }
                        if (dgvAxisAdd.Rows[i].Cells[6].Value == null)
                        {
                            Speed = 10;
                        }
                        else
                        {
                            Speed = int.Parse(dgvAxisAdd.Rows[i].Cells[6].Value.ToString());
                        }
                        ResetNum = int.Parse(dgvAxisAdd.Rows[i].Cells[7].Value.ToString());

                        if (mWDataToolClass.InsertAxis(GroupName, Name, CardNum, AxisNum, Pulse, Acc, Speed, ResetNum) != 0)
                        {
                            MessageBox.Show("第" + (i + 1).ToString() + "行的数据添加失败");
                            return;
                        }
                    }
                    closePanelUI();
                    //刷新轴数据
                    mWDataToolClass.SelectShowAxis(ref dgvAxis);
                    dgvAxisAdd.Rows.Clear();
                    MessageBox.Show("轴数据添加成功");
                }
                else
                {
                    MessageBox.Show("添加的数据为空");
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
        }