测试—自定义消息处理
Mydialog.h//*********头文件
#pragma once
#ifndef Dialog
#define Dialog
// MyDialog 对话框
#include "Resource.h"
#include "afxwin.h"
#include "MyCEditView.h"
#include "MyEditNew.h"
#define MY_MESSAGE (WM_USER+1001)//用户自定义消息类型号
class MyDialog : public CDialogEx
{
DECLARE_DYNAMIC(MyDialog)
public:
MyDialog(CWnd* pParent = NULL); // 标准构造函数
virtual ~MyDialog();
// 对话框数据
enum { IDD = IDD_DIALOG1 };
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持
DECLARE_MESSAGE_MAP()
public:
//afx_msg void OnBnClickedOk();
CEdit tempEDit;
// CEdit tempEDit2[4];
// MyCEditView tempEDit3[5];
afx_msg void OnBnClickedOk();
// MyCEditView tempEdit2;
// MyCEditView tempEDit2;
MyEditNew tempedit4;
afx_msg void OnBnClickedCancel();
afx_msg void OnTempButtonClicked();
afx_msg LRESULT OnMyMessage(WPARAM wParam, LPARAM lParam);
virtual void OnOK();
virtual LRESULT WindowProc(UINT message, WPARAM wParam, LPARAM lParam);
afx_msg void OnClickedButton1();
};
#endif
//**************************MyDialog.cpp
// MyDialog.cpp : 实现文件
//
#include "stdafx.h"
#include "MFCApplication1.h"
#include "MyDialog.h"
#include "afxdialogex.h"
// MyDialog 对话框
IMPLEMENT_DYNAMIC(MyDialog, CDialogEx)
MyDialog::MyDialog(CWnd* pParent /*=NULL*/)
: CDialogEx(MyDialog::IDD, pParent)
{
}
MyDialog::~MyDialog()
{
}
void MyDialog::DoDataExchange(CDataExchange* pDX)
{
CDialogEx::DoDataExchange(pDX);
DDX_Control(pDX, IDC_EDIT1, tempEDit);
// DDX_Control(pDX, IDC_EDIT6, tempEDit3[3]);
// DDX_Control(pDX, IDC_EDIT2, tempEdit2);
// DDX_Control(pDX, IDC_EDIT2, tempEDit2);
DDX_Control(pDX, IDC_EDIT2, tempedit4);
}
BEGIN_MESSAGE_MAP(MyDialog, CDialogEx)
//ON_BN_CLICKED(IDOK, &MyDialog::OnBnClickedOk)
ON_BN_CLICKED(IDOK, &MyDialog::OnBnClickedOk)
ON_BN_CLICKED(IDCANCEL, &MyDialog::OnBnClickedCancel)
ON_BN_CLICKED(12345, &MyDialog::OnTempButtonClicked)
ON_MESSAGE(MY_MESSAGE, &MyDialog::OnMyMessage)
ON_BN_CLICKED(IDC_BUTTON1, &MyDialog::OnClickedButton1)
END_MESSAGE_MAP()
// MyDialog 消息处理程序
//void MyDialog::OnBnClickedOk()
//{
// // TODO: 在此添加控件通知处理程序代码
// CDialogEx::OnOK();
//}
LRESULT MyDialog::OnMyMessage(WPARAM wParam, LPARAM lParam)
{
CString cstr1;
CString cstr2;
cstr1.Format(_T("%d"), wParam);//整型转字符串
cstr2.Format(_T("%d"), lParam);//整型转字符串
MessageBox(cstr1+cstr2);
return 0;
}
void MyDialog::OnBnClickedOk()
{
// TODO: 在此添加控件通知处理程序代码
MyDialog::OnOK();
//CDialogEx::OnOK();
}
CButton tempButton;
void MyDialog::OnBnClickedCancel()
{
// TODO: 在此添加控件通知处理程序代码
CRect tempCrect;
this->GetClientRect(tempCrect);
int res = tempButton.Create(L"ID_Button", WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON, CRect(tempCrect.right / 2, 0, tempCrect.right / 2 + 100, 0 + 50), this, 12345);
return;
CDialogEx::OnCancel();
}
void MyDialog::OnTempButtonClicked()
{
MessageBox(_T("准备........."));
}
void MyDialog::OnOK()
{
// TODO: 在此添加专用代码和/或调用基类
MessageBox(_T("到这了"));
CDialogEx::OnOK();
}
LRESULT MyDialog::WindowProc(UINT message, WPARAM wParam, LPARAM lParam)//message是消息类型,wParam是控件资源ID号,
{
switch (message)
{
case WM_COMMAND:
{
WPARAM a = wParam;
if (wParam == 12345)
{
MessageBox(_T("12345"));
}
if (wParam == IDOK)
{
MessageBox(_T("OK"));
return 0;
}
if (wParam == IDCANCEL)
{
MessageBox(_T("Cancel"));
}
break;
// CString str1 = (LPCTSTR)(wParam);
//CString str2 = (LPCTSTR)(lParam);
// MessageBox(_T("到这了"));
//MyDialog::OnBnClickedOk();
}
case MY_MESSAGE:
{
MessageBox(_T("自定义的一个消息"));
return CDialogEx::WindowProc(message, wParam, lParam);
}
default:
break;
}
// TODO: 在此添加专用代码和/或调用基类
return CDialogEx::WindowProc(message, wParam, lParam);
}
void MyDialog::OnClickedButton1()
{
// TODO: 在此添加控件通知处理程序代码
::SendMessage(this->m_hWnd, MY_MESSAGE, 9890, 3454);
}
测试—自定义消息处理相关推荐
- Boost:bind绑定的测试自定义占位符
Boost:bind绑定的测试自定义占位符 实现功能 C++实现代码 实现功能 bind绑定的测试自定义占位符 C++实现代码 #include <boost/config.hpp> #i ...
- winapi实现自定义消息处理类
上一篇介绍了如何实现主窗口界面的创建,接下来创建一个消息处理类,可以实现各种消息的可视化显示,使我们熟悉界面变化时出现的各种消息,为以后的开发打下基础. 这里创建了类WindowsMessageMap ...
- ABCNet训练测试自定义数据集
ABCNet:基于自适应贝塞尔曲线的实时端到端自然场景文字检测及识别网络 论文推荐ABCNet 论文链接 : https://arxiv.org/abs/2002.10200 官方开源代码: http ...
- FairMOT训练测试自定义数据集
1.将自己的数据集(视频需转为一帧一帧的图片,转换工具Convert to JPG - Convert images, documents and videos to JPG (img2go.com) ...
- 创建Silverlight自定义启动画面
每一款商业的Silverlight项目,为了体现项目个性化,都会有不同的界面设计,项目UI设计的第一步就是创建个性的自定义启动画面,本文将介绍如何创建Silverlight自定义启动画面,也就是经常说 ...
- Sencha应用程序的UI测试
原文:http://www.sencha.com/blog/ui-testing-a-sencha-app/ 几个月前,笔者写了一篇题为<自动化单元测试>的文章,内容涉及开发人员如何为业务 ...
- DedeCMS实现自定义表单提交后发送指定QQ邮箱法
https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=1&tn=monline_3_dg&wd=dedecms 邮箱&oq=d ...
- 演练:创建和注册自定义 HTTP 模块
本演练演示自定义 HTTP 模块的基本功能. 对于每个请求,都需要调用 HTTP 模块以响应 BeginRequest 和 EndRequest 事件. 因此,该模块在处理请求之前和之后运行. 如果 ...
- Spring Boot ApplicationContextRunner 测试指南
点击蓝色"程序猿DD"关注我哟 加个"星标",不忘签到哦 转载自公众号:锅外的大佬 关注我,回复口令获取可获取独家整理的学习资料: - 001:领取<Sp ...
最新文章
- mysql表结构 转 golang 结构体struct
- 嵌入式c语言汇编混合编程,嵌入式C语言和汇编语言的混合编程
- PT60报错(在表 $ 中午关键字$的输入项目T555Z)
- 【目录】python全栈工程师自动化+Py全栈+爬虫+Ai+python全栈工程师
- wxWidgets:wxCalendarCtrl 示例
- 如何使用SAP Analytics Cloud统计C4C系统每天新建的Lead个数和预测趋势
- 万字长文 - 解读功能开关 | IDCF
- matlab设置非平坦结构元,详解MATLAB/Simulink通信系统建模与仿真图书信息
- 微众银行软件测试笔试题,微众银行4月8日笔试题目及部分代码
- 原创内容将成网络视频的一支奇军
- JDBC连接数据库教程,以postgreSQL为例
- Asp.Net中备份还原SqlServer数据库
- Java开源 J2EE框架(一)
- VNX VMX and delete luns
- c语言对硬件编程,c语言直接对硬件操作可行吗?
- 使用bat脚本自动打开cmd并执行命令
- 机器学习笔记 - 简单了解模式识别
- 不值一提?开源CRM是否值得应用
- AI-语音处理理论和应用-语音识别、语音合成
- PS如何制作圆角矩形图片
热门文章
- python学习-列表的操作(常用函数均会介绍)
- 锁相环PLL/MMCM的使用
- 数学计算机培训反思,小学数学信息技术反思日志5
- iis创建php网站,iis怎么搭建php
- eplan可运行于linux系统吗,Eplan安装对电脑操作系统的要求
- c语言 fgets函数 去除换行符_C语言文件的打开和关闭
- java正则转义_Java 正则表达式 转义字符
- 原生android 全面屏,谷歌全面屏手机曝光!谷歌pixel2,安卓8.0+骁龙836!
- cpu不支持虚拟装linux,linux 查看cpu是不是支持虚拟化
- 8类网线利弊_网线买机制成品还是自己DIY?有这些点要注意