资源简介
用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
相关资源
- 基于MFC的TCP调试助手源码95706
- 基于mfc的多线程文件传输
- MFC数字钟(基于VC6.0)
- VC++MFC小游戏实例教程(实例)+MFC类库
- ChartCtrl控件库(可在VS2019中使用)
- 商品库存管理系统 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,高效简单,含详细
- 仿射密码-Affine cipher
- c++MFC车牌自动识别定位,只能定位和
- mfc+sql 酒店客房管理系统
- 基于图割的图像分割OpenCV+MFC实现
- MFC绘制Bezier曲线B样条曲线曲线拟合
评论
共有 条评论