使用Teechart控件输出不同的颜色的柱状图

工具:Vs2010,Teechart V8.0

架构:MFC

废话不多,咱先上个图:

工作原因,要给客户看,所以尽量美观点,用户好做展示,自己看的也愉悦不是~~~

                                               

小马一步一步给你们解析啊:

1.创建基于对话框的MFC程序(啥?不知道MFC是啥?这篇文章你先收藏吧,先学学基础的)

2.添加TeeChart,Combo,BUTTON控件,设置变量

Teechart不知道如何添加?戳这里:http://blog.csdn.net/leichelle/article/details/7994376 

下拉式列表框不知道怎么用?猛戳这里:http://www.jizhuomi.com/software/189.html

觉得皮肤好看?自己搜索:SkinMagic

3.为Dlg类添加颜色数组:

COLORREF dDataColor[5];
同时在构造函数中初始化:

CComboBoxDlg::CComboBoxDlg(CWnd* pParent /*=NULL*/)
	: CDialogEx(CComboBoxDlg::IDD, pParent)
{
	m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
	for(int i=0;i<5;i++)
	{
		dDataColor[i]=RGB(255, 0, 0);//初始化的时候把所有颜色设置为红色
	}
}
4.在OnInitDialog()中初始化Teechart控件和Combo控件

BOOL CComboBoxDlg::OnInitDialog()
{
	......
	// TODO: 在此添加额外的初始化代码
	//为下拉式列表框设置5个选项
	for(int i=0;i<5;i++)
	{
		CString temp;
		temp.Format(_T("第%d列"),i+1);
		m_Combo_Color.InsertString(i, temp);  
	}   
         m_Combo_Color.SetCurSel(0);   // 默认选择第一项
        //初始化Teechart控件,显示红色吧~~  
	 CSeries barSeries = (CSeries)m_Mychart.Series(0);
         for(int i=0;i<5;i++)
        {
             barSeries.AddXY((double)i,(double)(i+1),NULL,RGB(255, 0, 0)); //参数第一个是横坐标,第二个是纵坐标,第三个是注释,第四个就是颜色啦~~
         }	
        return TRUE;  // 除非将焦点设置到控件,否则返回 TRUE
}
5.为BUTTON添加消息映射:

void CComboBoxDlg::OnBnClickedButtonChangecolor()
{
	// TODO: 在此添加控件通知处理程序代码
    COLORREF color = RGB(255, 0, 0);      // 颜色对话框的初始颜色为红色  
    CColorDialog colorDlg(color);         // 构造颜色对话框,传入初始颜色值   
	
    if (IDOK == colorDlg.DoModal())       // 显示颜色对话框,并判断是否点击了“确定”   
    {   
	((CSeries)m_Mychart.Series(0)).Clear();//清除原先的图
        color = colorDlg.GetColor();      // 获取颜色对话框中选择的颜色值
	dDataColor[m_Combo_Color.GetCurSel()]=color;  //获取当前选择下拉式列表框的索引,根据索引将获得的颜色赋给颜色数组
        CSeries barSeries = (CSeries)m_Mychart.Series(0);
        for(int i=0;i<5;i++)
       {
            barSeries.AddXY((double)i,(double)(i+1),NULL,dDataColor[i]);
        }
	}
}



  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值