4

在winapi32控件中是否有任何控件可用于绘制这样的图表?

你不知道我怎么画一个吗?

在此处输入图像描述

(像这样!)

4

2 回答 2

8

您会发现 Windows API 的第三方图表控件 -
http://www.gigasoft.com/graphinglibrary.html
http://www.codeproject.com/Articles/14330/Custom-Control-Graph-and-Process-Bar

或者您可以使用 GDI 函数LineToMoveTo自己绘制折线图。

于 2012-06-16T12:49:37.230 回答
6

您绝对应该在“桌面开发 -> 杂项”部分的CodeProject中搜索任何类型的此类库。但就我而言,我会使用“ A 2D data可视化类”,它提供了一组非常好的特性(来自文章):

  • 正常和散点图模式
  • 自动缩放
  • 缩放
  • 适合宽度、高度和页面
  • 鼠标坐标追踪
  • 能够以交互方式添加和显示高达每秒 15000 个点(取决于计算机的速度)
  • 平移支持 - 只需按住 shift 键,同时按住左键移动鼠标 图形可以在任何设备上下文上绘制,包括打印机的

另一种选择是使用现成的 MFCActiveX组件。第一个很好的例子是“ Plot Graphic Library ”,第二个例子是“ GDI+ Plot ActiveX Control ”。正如您已经提到的,所有这些库都基于 GDI Windows 工具。顺便说一句,您可以自己绘制这个简单的图形,因为 Windows 中的 GDI(和 GDI+)功能非常强大。

另请参阅“ SoftIntegration 图形库 (SIGL) ”。该库包含许多不同的图和曲面。

但是,同样,这只是关于 GDI。另一种变体是使用 DirectX 或 OpenGL。对于后者,您绝对应该尝试SDL(简单 DirectMedia 层),它:

是一个跨平台的多媒体库,旨在通过 OpenGL 和 2D 视频帧缓冲区提供对音频、键盘、鼠标、操纵杆、3D 硬件的低级访问。如您所见,它是一个跨平台库。

熟悉的好 SO 问题是:

更新:

我忘了提到“ ROOT ”——它是我见过的最强大的图形库。实际上,它不是库,而是“数据分析框架”。图书馆的创建者是来自 CERN 的人。使用这个库,您可以构建几乎所有类型的绘图、曲面和图形。它是跨平台的,用 C++ 编写。ROOT 具有:控制台版本(您可以在其中使用 C++ 编写命令,-ROOT 有自己的 C++ 编译器)和大量库来链接您的项目。您可以在 MSVS 2008 和 MSVS 2010 的帮助下构建 MFC 应用程序。

于 2012-06-16T13:30:46.277 回答