首页 > 开发 > 综合 > 正文

从一个舆论调查的制作谈面向对象的编程思路(三)

2024-07-21 02:16:41
字体:
来源:转载
供稿:网友

     现在你是不是发现已经可以用这个类来进行舆论调查的操作了?但这个类里还没有任何的页面html

输出,所以现在的问题就是做页面显示层了,但现在又面临一个问题,那就是如何显示调查结果的问题,

比较流行的做法是用图表来表示,可以根据需要选择条形图、饼性图或折线图等等,那么如果在这个调查

类里来做也可以,但实在太不上算,应该单独做这么一个图表类,可以根据条件画这种图表,下面就是这

个类的定义:

namespace myclass.util
{
    using system;
    using system.collections ;
    using system.drawing ;



    /// <summary>
    ///    mychart是一个统计图类,可以生成饼形图、条形图和折线图
    /// </summary>
    public class mychart : object
    {

        /// <summary>
        /// 枚举类型
        /// </summary>
        /// <remarks>
        /// 三种类型,饼形图是pie , 条形图是bar , 折线图是curve
        /// </remarks>
        public enum charttype
        {
            pie = 0 ,
            bar = 1 ,
            curve = 2
        };

        /// <summary>
        /// 统计图标题
        /// </summary>
        private string m_strtitle ;

        /// <summary>
        /// 统计图项目数组,数组元素是chartitem类
        /// </summary>
        /// <remarks>
        ///   所有统计图项目的百分比和等于100。
        /// </remarks>  
        private arraylist m_arritems ;

        /// <summary>
        /// 计量单位
        /// </summary>
        private string m_strunit ;

        /// <summary>
        /// 生成统计图的宽度
        /// </summary>
        /// <remarks>
        /// 默认是200
        /// </remarks>
        private int m_intwidth ;

        /// <summary>
        /// 生成统计图的高度
        /// </summary>
        /// <remarks>
        /// 默认是200
        /// </remarks>
        private int m_intheight ;

        /// <summary>
        /// 生成统计图的背景色
        /// </summary>
        private system.drawing.color m_objbackcolor ;

        /// <summary>
        /// 统计图类型
        /// </summary>
        /// <remarks>
        /// 默认是饼形图
        /// </remarks>
        private charttype m_intcharttype ;

        /// <summary>
        /// 总数
        /// </summary>
        private int m_inttotalcount ;

        /// <summary>
        /// 总数,只读
        /// </summary>
        public int totalcount
        {
            get
            {
                return m_inttotalcount ;
            }
        }

        /// <summary>
        /// 统计图的标题
        /// </summary>
        public string title
        {
            get
            {
                return m_strtitle ;
            }
            set
            {
                m_strtitle = value ;
            }
        }
    
        /// <summary>
        /// 统计图项数组
        /// </summary>
        /// <remarks>
        ///  这个属性只读,若要添加项目,用additem函数
        /// </remarks>
        public arraylist items
        {
            get
            {
                return m_arritems ;
            }
        }

        /// <summary>
        /// 统计图宽度
        /// </summary>
        public int width
        {
            get
            {
                return m_intwidth ;
            }
            set
            {
                m_intwidth = value ;
            }
        }

        /// <summary>
        /// 计量单位
        /// </summary>
        public string unit
        {
            get
            {
                return m_strunit ;
            }
            set
            {
                m_strunit = value ;
            }
        }
        /// <summary>
        /// 统计图高度
        /// </summary>
        public int height
        {
            get
            {
                return m_intheight ;
            }
            set
            {
                m_intheight = value ;
            }
        }

        /// <summary>
        /// 统计图背景色
        /// </summary>
        public system.drawing.color backcolor
        {
            get
            {
                return m_objbackcolor ;
            }
            set
            {
                m_objbackcolor = value ;
            }
        }


        /// <summary>
        /// 图表类型,这个决定生成的图片采用什么形式
        /// </summary>
        /// <remarks>
        /// pie : 饼形图
        /// bar: 条形图
        /// curve: 折线图
        public charttype type
        {
            get
            {
                return m_intcharttype ;
            }
            set
            {
                m_intcharttype = value ;
            }
        }
        /// <summary>
        /// 构造函数
        /// </summary>
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表