資源簡介
用vs2012開發,基于對話框的MFC程序,串口通信使用Serialport類,里面包含彈出窗口、利用父窗口函數、繪制分析波形等等

代碼片段和文件信息
//?Analysis.cpp?:?實現文件
//
#include?“stdafx.h“
#include?“bishe1.h“
#include?“Analysis.h“
#include?“afxdialogex.h“
extern?int?datas[1000];
extern?int?cnt;
extern?int?chaxuntimes;
extern?int?chaxundata[20];
//?CAnalysis?對話框
IMPLEMENT_DYNAMIC(CAnalysis?CDialogEx)
CAnalysis::CAnalysis(CWnd*?pParent?/*=NULL*/)
:?CDialogEx(CAnalysis::IDD?pParent)
{
}
CAnalysis::~CAnalysis()
{
}
void?CAnalysis::DoDataExchange(CDataExchange*?pDX)
{
CDialogEx::DoDataExchange(pDX);
DDX_Control(pDX?IDC_DRAW?m_picDraw);
}
BEGIN_MESSAGE_MAP(CAnalysis?CDialogEx)
ON_BN_CLICKED(IDC_BUTTON1?&CAnalysis::OnBnClickedButton1)
ON_BN_CLICKED(IDC_BUTTON3?&CAnalysis::OnBnClickedButton3)
ON_BN_CLICKED(IDC_BUTTON4?&CAnalysis::OnBnClickedButton4)
END_MESSAGE_MAP()
//?CAnalysis?消息處理程序
void?CAnalysis::OnBnClickedButton3()//查詢
{
//?TODO:?在此添加控件通知處理程序代碼
UpdateData();
int?num1num2num3=1;
int?num1_shinum1_fen;
int?num2_yuenum2_ri;
num1=GetDlgItemInt(IDC_EDIT1);//時間
num2=GetDlgItemInt(IDC_EDIT2);//日期
num1_shi=num1/100;
num1_shi=mychangeformat(num1_shi);
num1_fen=num1%100;
num1_fen=mychangeformat(num1_fen);
num2_yue=num2/100;
num2_yue=mychangeformat(num2_yue);
num2_ri=num2%100;
num2_ri=mychangeformat(num2_ri);
for(int?i=0;i {
if((datas[i]==num1_fen)&&(datas[i+1]==num1_shi)&&(datas[i+2]==num2_ri)&&(datas[i+3]==num2_yue))
{
num3=datas[i+5];
chaxundata[chaxuntimes]=num3;
chaxuntimes++;
break;
}
}
SetDlgItemInt(IDC_EDIT3num3);
UpdateData(false);
}
void?CAnalysis::OnBnClickedButton1()
{
//?TODO:?在此添加控件通知處理程序代碼
}
void?CAnalysis::OnBnClickedButton4()//波形分析
{
//?TODO:?在此添加控件通知處理程序代碼
?CDC?*pDC=m_picDraw.GetDC();
?CRect?rectPicture;
?m_picDraw.GetClientRect(&rectPicture);?
?CPen?newPen;???????///?用于創建新畫筆???
?????CPen?*pOldPen;?????///?用于存放舊畫筆
?newPen.CreatePen(PS_SOLID?2?RGB(000));///?創建實心畫筆,粗度為2,顏色為黑色色 ?????
?????pOldPen?=?pDC->Selectobject(&newPen);///?選擇新畫筆,并將舊畫筆的指針保存到pOldPen?
?int?maxdata=chaxuntimes+1;
?for(int?i=0;i ?{
if(chaxundata[i]>maxdata)maxdata=chaxundata[i];
?}
?maxdata+=10;
int?width=rectPicture.Width();
int?height=rectPicture.Height();
//確定坐標圖四周預留的空白大小
const?int?mytop=rectPicture.Height()/10;
const?int?mybottom=rectPicture.Height()/10;
const?int?myleft=rectPicture.Width()/10;
const?int?myright=rectPicture.Width()/10;
double?intervalX?=?((double)rectPicture.Width())*0.8?/?(chaxuntimes?-?1);????
double?intervalY?=?((double)rectPicture.Height())*0.8?/?maxdata;?//縱坐標表示灰度值
pDC->MoveTo(int(myleft)int(height-(mybottom+chaxundata[0]*intervalY)));
for(int?i=0;i {
pDC->LineTo(int(myleft+i*intervalX)int(height-(mybottom+chaxundata[i]*intervalY)));
}
?pDC->Selectobject(pOldPen);?////?恢復舊畫筆?????
?????newPen.Deleteobject();///?刪除新畫筆
?255;
//繪制X,Y軸//X軸從圖形區域最左端到最右端
float?bottomY=0;
float?leftX=0;
//bottomY表示X軸的y值,leftX表示Y
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2013-12-31?16:06??bishe1\
?????目錄???????????0??2013-12-31?16:06??bishe1\bishe1\
?????文件?????????885??2013-11-26?14:46??bishe1\bishe1.sln
?????文件???????44032??2013-12-29?16:38??bishe1\bishe1.v11.suo
?????文件????????5333??2013-12-29?16:22??bishe1\bishe1\Analysis.cpp
?????文件?????????550??2013-12-29?16:22??bishe1\bishe1\Analysis.h
?????文件??????604732??2013-12-29?16:32??bishe1\bishe1\bishe1.aps
?????文件????????2368??2013-11-26?14:45??bishe1\bishe1\bishe1.cpp
?????文件?????????444??2013-11-26?19:35??bishe1\bishe1\bishe1.h
?????文件???????16168??2013-12-29?16:32??bishe1\bishe1\bishe1.rc
?????文件????????6560??2013-12-27?13:36??bishe1\bishe1\bishe1.vcxproj
?????文件????????2865??2013-11-26?19:23??bishe1\bishe1\bishe1.vcxproj.filters
?????文件????????6658??2013-12-29?16:31??bishe1\bishe1\bishe1Dlg.cpp
?????文件?????????930??2013-12-29?15:26??bishe1\bishe1\bishe1Dlg.h
?????文件????????4017??2013-11-26?14:45??bishe1\bishe1\ReadMe.txt
?????文件????????1599??2013-12-29?16:23??bishe1\bishe1\Requere.cpp
?????文件?????????509??2013-12-29?16:21??bishe1\bishe1\Requere.h
?????目錄???????????0??2013-12-31?16:05??bishe1\bishe1\res\
?????文件????????3154??2013-12-29?15:22??bishe1\bishe1\resource.h
?????文件???????67777??2013-06-05?10:20??bishe1\bishe1\res\bishe1.ico
?????文件?????????668??2013-11-26?14:45??bishe1\bishe1\res\bishe1.rc2
?????文件??????493038??2013-11-26?19:04??bishe1\bishe1\res\背景1.bmp
?????文件???????21070??2012-08-11?22:13??bishe1\bishe1\SerialPort.cpp
?????文件????????3307??2012-08-11?21:54??bishe1\bishe1\SerialPort.h
?????文件????????2980??2013-12-29?16:30??bishe1\bishe1\Settings.cpp
?????文件?????????695??2013-12-27?14:44??bishe1\bishe1\Settings.h
?????文件?????????139??2013-11-26?14:45??bishe1\bishe1\stdafx.cpp
?????文件????????1578??2013-11-26?14:45??bishe1\bishe1\stdafx.h
?????文件?????????234??2013-11-26?14:45??bishe1\bishe1\targetver.h
評論
共有 條評論