📄 allwavedlg.cpp
字号:
// AllWaveDlg.cpp : implementation file
//
#include "stdafx.h"
#include "Ultrasonic.h"
#include "AllWaveDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// AllWaveDlg dialog
extern int rxnum[8],rxoldnum[8],RxData[8][24576],RxDataOld[8][24576],realorhis;
AllWaveDlg::AllWaveDlg(CWnd* pParent /*=NULL*/)
: CDialog(AllWaveDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(AllWaveDlg)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
}
void AllWaveDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(AllWaveDlg)
// NOTE: the ClassWizard will add DDX and DDV calls here
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(AllWaveDlg, CDialog)
//{{AFX_MSG_MAP(AllWaveDlg)
ON_WM_PAINT()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// AllWaveDlg message handlers
void AllWaveDlg::OnPaint()
{
CPaintDC dc(this); // device context for painting
// TODO: Add your message handler code here
CDC* pDC=GetDC();
CBitmap MemBitmap;
CDC MemDC[8];
CPen Pen,Pen2;
Pen.CreatePen(PS_SOLID, 1, RGB(220, 220,220,));
Pen2.CreatePen(PS_SOLID, 1, RGB(0, 0,0,));
int i,j,m;
for(i=0;i<8;i++)
{
MemBitmap.LoadBitmap(IDB_background);
MemDC[i].CreateCompatibleDC(pDC);
//MemBitmap.CreateCompatibleBitmap(pDC,800,256);
CBitmap *pOldbmp=MemDC[i].SelectObject(&MemBitmap);
//用MemDC画图
MemDC[i].SelectObject(&Pen);
for(j=256;j>=0;j-=20)
{
MemDC[i].MoveTo(0,j);
MemDC[i].LineTo(32000,j);
}//画横线
// if(realorhis==0) m=800;else m=2000;
for(j=0;j<=32000;j+=800)
{
MemDC[i].MoveTo(j,0);
MemDC[i].LineTo(j,256);
}//画竖线
MemDC[i].SelectObject(&Pen2);
if(realorhis==0)
{
for(j=0;j<32000;j++)//rxnum[i]-1
{
MemDC[i].MoveTo(j,256-RxData[i][j]);
MemDC[i].LineTo(j+1,256-RxData[i][j+1]);//-1
}
pDC->StretchBlt(40+(i%2)*500,35+(i/2)*175,450,128,&MemDC[i],0,0,32000,256,SRCCOPY);
}
else
{
for(j=0;j<32000 && RxDataOld[i][j+1]!=-1;j++)
{
MemDC[i].MoveTo(j,256-RxDataOld[i][j]);
MemDC[i].LineTo(j+1,256-RxDataOld[i][j+1]);
}
pDC->StretchBlt(40+(i%2)*500,35+(i/2)*175,450,128,&MemDC[i],0,0,32000,256,SRCCOPY);
}
MemDC[i].SelectObject(pOldbmp);
MemDC[i].DeleteDC();
MemBitmap.DeleteObject();
}//for
// Do not call CDialog::OnPaint() for painting messages
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -