MFC--对话框的一个画图控件-HighSpeedChart

这篇具有很好参考价值的文章主要介绍了MFC--对话框的一个画图控件-HighSpeedChart。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

下载链接在最下面 (免费)

可在vs2022,vs2019等vs版本使用

 成果展示MFC--对话框的一个画图控件-HighSpeedChart

MFC--对话框的一个画图控件-HighSpeedChart

下载好文件后,将

MFC--对话框的一个画图控件-HighSpeedChart 整个文件夹,添加到项目中, 

MFC--对话框的一个画图控件-HighSpeedChart

MFC--对话框的一个画图控件-HighSpeedChart

MFC--对话框的一个画图控件-HighSpeedChart

MFC--对话框的一个画图控件-HighSpeedChart

1.之后,将控件拖到对话框里,修改属性到与图片相同

 MFC--对话框的一个画图控件-HighSpeedChart

        MFC--对话框的一个画图控件-HighSpeedChart

2.为对话框添加类,我这里添加的是 

MFC--对话框的一个画图控件-HighSpeedChart

3.为控件增加变量,因为不是VS自带的控件

MFC--对话框的一个画图控件-HighSpeedChart

4.点击类试图 

MFC--对话框的一个画图控件-HighSpeedChart

进行对控件的初始化, 

	virtual BOOL OnInitDialog();
	CChartCtrl m_BarChart1;
BOOL BarChart::OnInitDialog()
{
	CDialogEx::OnInitDialog();

	// TODO:  在此添加额外的初始化
	CMFCApplication6Dlg* barparent;
	barparent = (CMFCApplication6Dlg*)theApp.m_pMainWnd;
	CChartStandardAxis* Bar_pBottomAxis_z = m_BarChart1.CreateStandardAxis(CChartCtrl::BottomAxis);	//绘制坐标轴(x)
	Bar_pBottomAxis_z->SetMinMax(0, 20);	//一共有0到20
	Bar_pBottomAxis_z->SetDiscrete(true);
	CChartStandardAxis* Bar_pLeftAxis_z = m_BarChart1.CreateStandardAxis(CChartCtrl::LeftAxis);//y轴
	Bar_pLeftAxis_z->SetMinMax(0, 400);
	Bar_pLeftAxis_z->GetLabel()->SetText(_T("成绩"));
	m_BarChart1.GetBottomAxis()->GetLabel()->SetText(L"学号");
	m_BarChart1.GetTitle()->AddString(_T("柱状图"));	//设置柱状图的表头
	CChartFont titleFont;
	titleFont.SetFont(_T("Arial Black"), 120, true, false, true);	//设置标题字体
	m_BarChart1.GetTitle()->SetFont(titleFont);
	m_BarChart1.GetTitle()->SetColor(RGB(0, 0, 128));
	m_BarChart1.SetBackGradient(RGB(255, 255, 255), RGB(255, 127, 80), gtVertical);	//花里胡哨背景色
	m_BarChart1.EnableRefresh(false);
	m_BarChart1.GetLegend()->SetVisible(true);
	m_BarChart1.GetLegend()->SetHorizontalMode(true);
	m_BarChart1.GetLegend()->UndockLegend(550, 10);
}

初始化之后的图形就如图, 

MFC--对话框的一个画图控件-HighSpeedChart

 如果你要再加数据,继续增加数据

	m_BarChart1.RemoveAllSeries();//先清空
	CChartBarSerie* pBarSeries1 = m_BarChart1.CreateBarSerie();	//第一个柱子
	pBarSeries1->SetColor(RGB(25, 202, 173));			//柱子颜色
	pBarSeries1->SetName(_T("平均分"));
	CChartBarSerie* pBarSeries2 = m_BarChart1.CreateBarSerie();//第二个柱子
	pBarSeries2->SetColor(RGB(68, 68, 255));		//线的颜色
	pBarSeries2->SetGradient(RGB(214, 213, 183), gtVerticalDouble);//花里胡哨的渐变背景色
	pBarSeries2->SetName(_T("总成绩"));
	pBarSeries2->SetBorderColor(RGB(0, 0, 255));	//设置柱状图颜色
	pBarSeries2->SetBorderWidth(1);					//柱子宽度
添加数据的部分
{XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX}
	m_BarChart1.EnableRefresh(true);

加了之后的成果

MFC--对话框的一个画图控件-HighSpeedChart

 如果你想添加折线图,就在上面代码把柱状图改为折线图

CChartLineSerie* pLineSerie1;
	CChartLineSerie* pLineSerie2;
	CChartLineSerie* pLineSerie3;
	m_chartctrl.RemoveAllSeries();//先清空
	pLineSerie1 = m_chartctrl.CreateLineSerie();
	pLineSerie1->SetSeriesOrdering(poXOrdering);//设置为以x递增顺序
	pLineSerie1->SetColor(RGB(244, 96, 108));//颜色
	pLineSerie1->SetWidth(3);//设置线的宽度
	pLineSerie1->SetName(_T("数学"));//设置曲线名
	pLineSerie1->AddPoints(x, y_sx, 100);

MFC--对话框的一个画图控件-HighSpeedChart

下载链接:

mierhaosi3/HIGHSPEEDCHART1: 高速绘图控件 (github.com)

加载到项目里好像有一个是关于unsigned的错误,好像是改成unsigned文章来源地址https://www.toymoban.com/news/detail-440588.html

到了这里,关于MFC--对话框的一个画图控件-HighSpeedChart的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • MFC(十二)多个对话框

    我们来制定多个对话框,每个对话框都有不同的功能,单击下一步,即可跳转到下一个对话框 1.新建一个启动按钮 2.在资源视图,Dialog里面,右键--添加资源----dialog====选择IDD PROPPAGE_SMALL新建 属性页,改名为PROP01 3.打开工具箱,添加group box,group box控件的作用是建立了一个分

    2024年02月07日
    浏览(47)
  • MFC(十三)多个对话框

    1.打开类视图,右键项目---类向导--添加Cpropsheet类,命名为mypropsheet CPropertySheet 是 MFC 的一个类,用于创建包含多个属性页的对话框。它可以使用内置的向导模式,向用户显示“下一步”和“上一步”按钮 2.在Cmypropsheet.h中,声明三个属性类的对象  3.在构造函数里,把三个对

    2024年02月08日
    浏览(46)
  • MFC 给对话框添加图片背景

    在windows开发当中做界面的主要技术之一就是使用MFC,通常我们看到的QQ,360,暴风影音这些漂亮的界面都可以用MFC来实现。今天我们来说一下如何用MFC美化对话框,默认情况下,对话框的背景如下: 那么,我们如何将它的背景变成如下界面呢,而且还要保留对话框的移动功能,

    2024年02月06日
    浏览(40)
  • MFC为对话框资源添加类

    VC6新建一个对话框类型的工程; 建立之后资源中默认有2个对话框,一个是主对话框,About这个是默认建立的关于版权信息的; 然后主对话框有对应的.h和.cpp文件;可以在其中进行编程;   默认建立的有一个 关于 对话框;   在资源中新插入一个对话框,IDD_DIALOG1是对话框I

    2024年02月01日
    浏览(44)
  • Opencv显示图片(MFC基于对话框窗口)

    #1.编辑对话框按钮,修改各个按钮窗口ID和绑定变量 picture 控件 “打开图片”按钮控件 #2.编写显示图片函数 void DrawMat(cv::Mat img, UINT nID); .h文件进行声明 .cpp进行定义 #3.定义CString fun_LoadImg();函数 .h文件进行声明 .cpp文件进行定义 #4.双击“打开图片”按钮 系统自动弹出响应函数

    2024年04月15日
    浏览(51)
  • MFC 单文档弹出对话框 标题图标

    创建MFC时 1、应用程序类型:以单个文档-项目样式选择MFC标准 菜单关联对话框  2、菜单关联-资源视图中的Menu-IDR_MAINFRAME(此处看想关联谁,如果是想关联一个对话框,那就先创建一个对话框再进行关联,如果是想关联一个类,可以看函数在哪个类下面从而进行关联) a.关联

    2024年02月06日
    浏览(42)
  • MFC基于对话框使用dll进行多语言切换

    title: MFC基于对话框使用dll进行多语言切换 categories:[MFC] tags:[音视频编程] date: 2021/12/15 作者:hackett 微信公众号:加班猿 Qt使用qm文件切换有两种加载方式,比较容易一些 在资源文件中加载(这个比较好): 优点: 在程序发布时不用把最新的.qm文件拷贝到加载路径中,降低了修

    2024年02月08日
    浏览(33)
  • MFC第十八天 非模式对话框、对话框颜色管理、记事本项目(查找替换、文字和背景色、Goto(转到)功能的开发)

    a)调用CDialog::Create函数实现,例如:QQ的聊天框,记事本的查找等。 b)非阻塞,对象的生命期必须足够,否则就析构时摧毁了。 c)可以采用堆空间申请多例模式,也可以用全局或者成员。 d)EndDialog只对模式对话框有效,对非模式对话框无效,如果要摧毁调用DestroyWindow (只是隐

    2024年02月17日
    浏览(53)
  • QML控件和对话框之ApplicationWindows

    Application Window在 Qt Quick Controls中类似于QMain Window 在 Qt/C++中的角色,ApplicationWindow可以充当应用程序顶层窗口,具有自己的布局,包含menuBar、toolBar、statusBar等属性,可以使用平台无关的方式方便地添加菜单栏、工具栏和状态栏等项目,该类型还包含一个contentltem属性,用来进

    2023年04月22日
    浏览(36)
  • QT常用控件——菜单栏和对话框

    目录 引言  一,菜单栏 二,工具栏 三,对话框 QDialog  QMainWindow 是一个为用户提供主窗口程序的类,包含一个菜单栏(menu bar)、多个工具栏(tool bars)、多个锚接部件(dock widgets)、一个状态栏(status bar)及一个中心部件(central widget),是许多应用程序的基础,如文本编辑器,图片

    2023年04月08日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包