繁体   English   中英

我想在我的winapi C程序中绘制图形,有任何控制吗?

[英]I want to draw a graph in my winapi C program, is there any control?

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

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

在此输入图像描述

(像这样!)

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

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

您肯定应该在“ 桌面开发 - >其他”部分的CodeProject中搜索任何类型的此类库。 但就我而言,我会使用“ 一个2D数据可视化类 ”,它提供了一组非常好的功能(来自文章):

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

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

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

但是,再一次,它只是关于GDI。 另一种变体是使用DirectX或OpenGL。 对于后者,你一定要尝试SDL (Simple DirectMedia Layer):

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

熟悉的好SO问题是:

更新:

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM