⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ddrawbox.cs

📁 用C#写的USB数据采集程序
💻 CS
📖 第 1 页 / 共 4 页
字号:
        /// <summary>
		/// 获取或设置最小横坐标
		/// </summary>
        public int MinX
        {
            set
            {
                if (value != _minX)
                {
                    _minX = value;
                    if (_minX > 1073741824)
                    {
                        _minX = 1073741824;
                    }
                    if (_minX < -1073741824)
                    {
                        _minX = -1073741824;
                    }
                    if (_maxX > _minX)
                    {
                        int maxdrawx = Math.Min(_dataend, _maxX);
                        int mindrawx = Math.Max(_datastart, _minX);
                        //绘画点数
                        int n = maxdrawx - mindrawx + 1;
                        if (n < 0)
                        {
                            n = 0;
                        }
                        if (_p.Length != n + 2)
                        {
                            _p = new Point[n + 2];
                        }
                        //重画
                        Draw(true);
                    }
                }
            }
            get
            {
                return _minX;
            }
        }
        #endregion

        #region "最大纵坐标"
        /// <summary>
		/// 获取或设置最大纵坐标
		/// </summary>
		public int MaxY
		{
			set
			{
				if(_maxY != value)
				{
					_maxY = value;
                    if (_maxY > 1073741824)
                    {
                        _maxY = 1073741824;
                    }
					//重画
                    Draw(true);
				}
			}
			get
			{
				return _maxY;
			}
        }
        #endregion

        #region "最小纵坐标"
        /// <summary>
        /// 获取或设置最小纵坐标
        /// </summary>
        public int MinY
        {
            set
            {
                if (_minY != value)
                {
                    _minY = value;
                    if (_minY > 1073741824)
                    {
                        _minY = 1073741824;
                    }
                    if (_minY < -1073741824)
                    {
                        _minY = -1073741824;
                    }
                    //重画
                    Draw(true);
                }
            }
            get
            {
                return _minY;
            }
        }
        #endregion

        #region "选定的道址"
        /// <summary>
        /// 获取或设置选定的道址,为-1时将不显示选定的道址
		/// </summary>
        public int SelectedX
        {
            set
            {
                if (_selectedx != value)
                {
                    _selectedx = value;
                    //重画
                    PaintSelected();
                    PaintROI();
                }
            }
            get
            {
                return _selectedx;
            }
        }
        #endregion

        #region "选定区域的开始道址"
        /// <summary>
		/// 获取或设置选定区域的开始道址,为-1时将不显示选定区域
		/// </summary>
        public int RegionStartX
        {
            set
            {
                if (_regionstartx != value)
                {
                    _regionstartx = value;
                    //重画
                    PaintSelected();
                    PaintROI();
                }
            }
            get
            {
                return _regionstartx;
            }
        }
        #endregion

        #region "选定区域的结束道址"
        /// <summary>
		/// 获取或设置选定区域的结束道址,为-1时将不显示选定区域
		/// </summary>
        public int RegionEndX
        {
            set
            {
                if (_regionendx != value)
                {
                    _regionendx = value;
                    //重画
                    PaintSelected();
                    PaintROI();
                }
            }
            get
            {
                return _regionendx;
            }
        }
        #endregion

        #region "要显示的数据"
        /// <summary>
		/// 获取或设置要显示的数据,数据设置后会被自动显示
		/// </summary>
        public int[] Data
        {
            set
            {
                _data = value;
                _dataend = _datastart + _data.Length - 1;
                int maxdrawx = Math.Min(_dataend, _maxX);
                int mindrawx = Math.Max(_datastart, _minX);
                //绘画点数
                int n = maxdrawx - mindrawx + 1;
                if (n < 0)
                {
                    n = 0;
                }
                if (_p.Length != n + 2)
                {
                    _p = new Point[n + 2];
                }
                //重画
                Draw(false);
            }
            get
            {
                return (int[])_data.Clone();
            }
        }
        #endregion

        #region "数据坐标"
        /// <summary>
		/// 获取或设置数据坐标
		/// </summary>
        public MyCoordinate Coordinate
        {
            set
            {
                if (_coordinate != value)
                {
                    _coordinate = value;
                    //重画
                    Draw(false);
                }
            }
            get
            {
                return _coordinate;
            }
        }
        #endregion

        #region "绘画方式"
        /// <summary>
		/// 获取或设置绘画方式,如果为真则画填充图
		/// </summary>
        public bool Fill
        {
            set
            {
                if (_fill != value)
                {
                    _fill = value;
                    Draw(false);
                }
            }
            get
            {
                return _fill;
            }
        }
        #endregion

        #region "数据开始的X坐标"
        /// <summary>
        /// 获取或设置数据开始的X坐标
        /// </summary>
        public int DataStart
        {
            set
            {
                if (_datastart != value)
                {
                    _datastart = value;
                    _dataend = _datastart + _data.Length - 1;
                    int maxdrawx = Math.Min(_dataend, _maxX);
                    int mindrawx = Math.Max(_datastart, _minX);
                    //绘画点数
                    int n = maxdrawx - mindrawx + 1;
                    if (n < 0)
                    {
                        n = 0;
                    }
                    if (_p.Length != n + 2)
                    {
                        _p = new Point[n + 2];
                    }
                    Draw(false);
                }
            }
            get
            {
                return _datastart;
            }
        }
        #endregion

        #region 是否画X网格
        /// <summary>
        /// 获取或设置是否画X网格
        /// </summary>
        public bool PaintGridX
        {
            set
            {
                if (_paintgridx != value)
                {
                    _paintgridx = value;
                    Draw(false);
                }
            }
            get
            {
                return _paintgridx;
            }
        }
        #endregion

        #region 是否画Y网格
        /// <summary>
        /// 获取或设置是否画Y网格
        /// </summary>
        public bool PaintGridY
        {
            set
            {
                if (_paintgridy != value)
                {
                    _paintgridy = value;
                    Draw(false);
                }
            }
            get
            {
                return _paintgridy;
            }
        }
        #endregion

        #region 是否显示对数据的刻度
        /// <summary>
        /// 获取或设置是显示对数据的刻度
        /// </summary>
        public bool ShowCalibrate
        {
            set
            {
                if (_showcalibrate != value)
                {
                    _showcalibrate = value;
                    Draw(false);
                }
            }
            get
            {
                return _showcalibrate;
            }
        }
        #endregion

        #region "刻度参数"
        /// <summary>
        /// 获取或设置刻度参数
        /// </summary>
        public double[] CalibrateCoefficient
        {
            set
            {
                _calibratecoefficient = value;
                //重画
                if (_showcalibrate)
                {
                    Draw(false);
                }
            }
            get
            {
                return (double[])_calibratecoefficient.Clone();
            }
        }
        #endregion

        #region "X坐标标签"
        /// <summary>
        /// 获取或设置X坐标标签
        /// </summary>
        public string LabelX
        {
            set
            {
                if (_labelX != value)
                {
                    _labelX = value;
                    Draw(false);
                }
            }
            get
            {
                return _labelX;
            }
        }
        #endregion

        #region "Y坐标标签"
        /// <summary>
        /// 获取或设置Y坐标标签
        /// </summary>
        public string LabelY
        {
            set
            {
                if (_labelY != value)
                {
                    _labelY = value;
                    Draw(false);
                }
            }
            get
            {
                return _labelY;
            }
        }
        #endregion

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -