1

我想实现一个示波器来通过基于对话框的 MFC Visual C++ 显示一些不同的频率,但是当我搜索太多时,我发现在 Visual C++ 中绘制形状的唯一方法是使用 SDI 或 MDI!我想知道是否有办法通过基于对话框的 mfc 来绘制我的频率图。如果有人知道任何参考,如果他/她介绍给我,我真的很感激。

4

2 回答 2

4

是的,您可以使用 MFC 在对话框中绘图。

简而言之,在对话框上放置一个“静态”(或图像,我不确定)资源,覆盖/派生类并处理 WM_PAINT 消息以绘制图形/示波器。

看看http://www.codeproject.com/KB/miscctrl/High-speedCharting.aspx 是一个很好的例子。

于 2011-07-06T13:02:57.597 回答
2

您可以使用GDI绘制任何东西,如果您打算重用它,您甚至可以为您的示波器实现自定义控件,否则您可以只使用静态/图片框架作为容器。

对于可以有很多更新的东西,比如示波器,你可能需要对你绘制的表面进行双重缓冲,否则你会被撕裂。可以在此处找到使用 GDI 的简短概述。

MFC 有其自己的 GDI 数据结构和函数等价物,请参阅此

于 2011-07-06T13:01:40.523 回答