资源简介
经常需要绘制实时类曲线,网上不好找,找到的也是一些很旧的插件,难以使用!这个资源是GDI双缓冲纯MFC代码的,很不错!
代码片段和文件信息
// DlgWav.cpp : 实现文件
//
#include “stdafx.h“
#include “WavView.h“
#include “DlgWav.h“
#include “afxdialogex.h“
// CDlgWav 对话框
IMPLEMENT_DYNAMIC(CDlgWav CDialog)
CDlgWav::CDlgWav(CWnd* pParent /*=NULL*/)
: CDialog(CDlgWav::IDD pParent)
m_oBmpView(NULL)
m_oBmpMask(NULL)
m_oBmpWav(NULL)
m_nWidth(0)
m_nHeight(0)
m_nMargin(30)
m_oPtScA(0)
m_oPtScB(0)
m_bStretch(FALSE)
m_nChH(-1)
m_pszLabX(NULL)
m_pszLabY(NULL)
m_pDataBuf(NULL)
m_bValidData(FALSE)
m_nDataLen(0)
m_nTmId(100)
m_bStart(FALSE)
m_oPtCursorA(0)
m_oPtCursorB(0)
m_bMoveCursA(FALSE)
m_bMoveCursB(FALSE)
m_nTmCnt(0)
m_bShowWav(FALSE)
m_nDivX(100)
m_nScanPeriod(4)
m_nWavL(0)
m_nWavR(0)
m_nWavW(0)
m_nWavH(0)
m_pWavCoLst(NULL)
m_nChCnt(0)
m_nGridX(1)
m_nGridY(1)
m_nWavMod(0)
{
m_oBgColor=RGB(000);
m_oTxtColor=RGB(01600);
m_oGridColor=RGB(120120120);
m_oBdColor=RGB(200200200);
m_oSLinColor=RGB(2552420);
m_oNomCursColor=RGB(0128255);
m_oSelCursColor=RGB(0255255);
m_oWavColor=RGB(01600);
}
CDlgWav::~CDlgWav()
{
if(m_oBmpView!=NULL)
{
delete m_oBmpView;
m_oBmpView=NULL;
}
if(m_oBmpWav!=NULL)
{
delete m_oBmpWav;
m_oBmpWav=NULL;
}
if(m_oBmpMask!=NULL)
{
delete m_oBmpMask;
m_oBmpMask=NULL;
}
if(m_pszLabX!=NULL) delete [] m_pszLabX;
if(m_pszLabX!=NULL) delete [] m_pszLabY;
if(m_pDataBuf!=NULL) delete [] m_pDataBuf;
}
//判断点击点位置【坐标区、边衬区】。
UINT CDlgWav::PointTest(CPoint point)
{
int nWavL=m_nMargin;
int nWavT=m_nMargin;
int nWavR=m_nWidth-m_nMargin-1;
int nWavB=m_nHeight-m_nMargin-1;
if(point.xnWavR)
{
return PT_MGNVIEW;
}
else if(point.ynWavB)
{
return PT_MGNVIEW;
}
else
{
return PT_WAVVIEW;
}
}
void CDlgWav::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
}
// CDlgWav 消息处理程序
BEGIN_MESSAGE_MAP(CDlgWav CDialog)
ON_WM_PAINT()
ON_WM_SIZE()
ON_WM_ERASEBKGND()
ON_WM_LBUTTONDOWN()
ON_WM_LBUTTONUP()
ON_WM_MOUSEMOVE()
ON_WM_TIMER()
ON_WM_RBUTTONDOWN()
ON_MESSAGE(UM_GETDATAOnGetData)
END_MESSAGE_MAP()
BOOL CDlgWav::OnInitDialog()
{
CDialog::OnInitDialog();
//初始化字体
memset(&m_oLogFont0sizeof(m_oLogFont));
_tcscpy(m_oLogFont.lfFaceName_T(“Courier New“));
m_oLogFont.lfCharSet=ANSI_CHARSET;
m_oLogFont.lfHeight=14;
m_oLogFont.lfWidth=0;
m_oLogFont.lfItalic=FALSE;
m_oLogFont.lfStrikeOut=FALSE;
m_oLogFont.lfUnderline=FALSE;
m_oLogFont.lfWeight=FW_NORMAL;
m_oLogFont.lfClipPrecision=CLIP_DEFAULT_PRECIS;
m_oLogFont.lfOutPrecision=OUT_DEFAULT_PRECIS;
m_oLogFont.lfPitchAndFamily=DEFAULT_PITCH;
m_oLogFont.lfQuality=DEFAULT_QUALITY;
//初始化XY轴Lable
m_pszLabX=new TCHAR[6];
_tcscpy(m_pszLabX_T(“T/4ms“));
m_pszLabY=new TCHAR[4];
_tcscpy(m_pszLabY_T(“Y/V“));
//初始化数据缓冲区
m_nDataLen=100;
m_pDataBuf=new WORD[m
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 177152 2013-04-16 12:24 WavView\Debug\WavView.exe
文件 1198432 2013-03-13 13:53 WavView\Debug\WavView.ilk
文件 5745664 2013-03-13 13:53 WavView\Debug\WavView.pdb
文件 5866 2013-03-13 13:53 WavView\WavView\Debug\cl.command.1.tlog
文件 136042 2013-03-13 13:53 WavView\WavView\Debug\CL.read.1.tlog
文件 4048 2013-03-13 13:53 WavView\WavView\Debug\CL.write.1.tlog
文件 85866 2013-03-13 13:50 WavView\WavView\Debug\DlgWav.obj
文件 2 2013-03-13 13:53 WavView\WavView\Debug\li
文件 2 2013-03-13 13:53 WavView\WavView\Debug\li
文件 2 2013-03-13 13:53 WavView\WavView\Debug\li
文件 2 2013-03-13 13:53 WavView\WavView\Debug\li
文件 2 2013-03-13 13:53 WavView\WavView\Debug\li
文件 2 2013-03-13 13:53 WavView\WavView\Debug\li
文件 3558 2013-03-13 13:53 WavView\WavView\Debug\li
文件 9858 2013-03-13 13:53 WavView\WavView\Debug\li
文件 2218 2013-03-13 13:53 WavView\WavView\Debug\li
文件 1422 2013-03-13 13:53 WavView\WavView\Debug\mt.command.1.tlog
文件 1330 2013-03-13 13:53 WavView\WavView\Debug\mt.read.1.tlog
文件 922 2013-03-13 13:53 WavView\WavView\Debug\mt.write.1.tlog
文件 2190 2013-03-12 15:51 WavView\WavView\Debug\rc.command.1.tlog
文件 6426 2013-03-12 15:51 WavView\WavView\Debug\rc.read.1.tlog
文件 954 2013-03-12 15:51 WavView\WavView\Debug\rc.write.1.tlog
文件 640172 2013-03-12 15:50 WavView\WavView\Debug\stdafx.obj
文件 2108416 2013-03-13 13:53 WavView\WavView\Debug\vc100.idb
文件 3944448 2013-03-13 13:53 WavView\WavView\Debug\vc100.pdb
文件 915 2013-03-12 15:51 WavView\WavView\Debug\WavView.exe.em
文件 980 2013-03-12 15:51 WavView\WavView\Debug\WavView.exe.em
文件 640 2013-03-13 13:53 WavView\WavView\Debug\WavView.exe.intermediate.manifest
文件 56 2013-03-13 14:04 WavView\WavView\Debug\WavView.lastbuildstate
文件 3 2013-03-13 14:04 WavView\WavView\Debug\WavView.log
............此处省略38个文件信息
- 上一篇:Pointers on C中文版
- 下一篇:MFC 视频播放器
相关资源
- mfc 调用redis
- MFC视频播放器源码(支持avi/wma/mp3等格
- mfc绘图大全(画直线、矩形、椭圆)
- MFC控件重绘
- hook,捕获所有案件,查找所有窗口,
- (学习)VS2010之MFC入门到精通教程
- MFC文档_视图_框架_模板结构体系深入
- 简单员工管理系统(适合初学MFC)
- MFC五子棋游戏
- MFC UDP编程
- MFC的异步网络通讯应用程序
- C++MFC模块讲解,黑发程序员课程整理
- 一个简单而强大的基于MFC的web server源
- 基于MFC的VC++仿QQ浏览器源码(雏形)
- MFCaccess.rar
- VC++MFC课程设计的学生成绩管理系统
- MFC 日历控件 万年历 Calendar自绘
- CrystalDiskInfo-HDD/SSD硬盘信息,SMART信息
- MFC自定义界面HUI,高效简单,含详细
- H264转化MP4源码
- 车牌识别系统,VS2010实现,语言C++
- 仿射密码-Affine cipher
- c++MFC车牌自动识别定位,只能定位和
- mfc+sql 酒店客房管理系统
- 基于图割的图像分割OpenCV+MFC实现
- MFC绘制Bezier曲线B样条曲线曲线拟合
- MFC坦克大战
- VC++ 中国象棋经典游戏源代码
- 课程设计: MFC 学生信息管理系统
- MFC对ACCESS数据库的增加、删除、查找
评论
共有 条评论