在MFC中使用自定义窗口类
2006-03-02 12:35
225 查看
1、在CYourApp::InitInstance中注册窗口类
WNDCLASS wc;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);
wc.hCursor = LoadCursor(IDC_ARROW);
wc.hIcon = NULL;
wc.hInstance = AfxGetInstanceHandle();
wc.lpfnWndProc = ::DefWindowProc; // 注意指定窗口过程
wc.lpszClassName = _T("MyWnd_class"); // 指定窗口类
wc.lpszMenuName = NULL;
wc.style = 0;
AfxRegisterClass(&wc);
2、编写.h文件类的定义
#ifndef MY_WND
#define MY_WND
class CMyWnd : public CWnd
{
public:
// 构造函数、析构函数等公有接口的声明
protected:
// 各消息处理函数的声明
DECLARE_MESSAGE_MAP()
};
#endif
3、编写.cpp文件类的实现
#include "stdafx.h"
#include "MyWnd.h"
// 构造函数、析构函数等函数的实现
BEGIN_MESSAGE_MAP(CMyWnd, CWnd)
// 各消息分流器
END_MESSAGE_MAP()
// 各消息分流器的实现
4、在主程序代码的适当地方调用Create或CreateEx创建窗口。
WNDCLASS wc;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);
wc.hCursor = LoadCursor(IDC_ARROW);
wc.hIcon = NULL;
wc.hInstance = AfxGetInstanceHandle();
wc.lpfnWndProc = ::DefWindowProc; // 注意指定窗口过程
wc.lpszClassName = _T("MyWnd_class"); // 指定窗口类
wc.lpszMenuName = NULL;
wc.style = 0;
AfxRegisterClass(&wc);
2、编写.h文件类的定义
#ifndef MY_WND
#define MY_WND
class CMyWnd : public CWnd
{
public:
// 构造函数、析构函数等公有接口的声明
protected:
// 各消息处理函数的声明
DECLARE_MESSAGE_MAP()
};
#endif
3、编写.cpp文件类的实现
#include "stdafx.h"
#include "MyWnd.h"
// 构造函数、析构函数等函数的实现
BEGIN_MESSAGE_MAP(CMyWnd, CWnd)
// 各消息分流器
END_MESSAGE_MAP()
// 各消息分流器的实现
4、在主程序代码的适当地方调用Create或CreateEx创建窗口。
相关文章推荐
- 如何自定义MFC的窗口类名
- MFC用户自定义消息的使用
- MFC使用SendMessage()发送自定义消息实现进程间通信
- 使用LIBUSB实现和自定义通讯设备通讯--MFC代码在末尾
- MFC中使用自定义CObject派生类重载“=”“==”操作符 error C2248: “CObject::operator =” error C2678: 二进制“==”
- 如何在基于MFC的环境中使用自定义消息函数?
- MFC中自定义消息使用
- 在MFC中使用自定义窗口类
- MFC总结(4)---MFC中如何使用子控件向父控件发送自定义消息
- 使用MFC的CArray自定义数据类型,编译报错的解决方法
- MFC中自由使用自定义消息
- MFC使用SendMessage()发送自定义消息实现进程间通信
- MFC中自由使用自定义消息
- MFC中自由使用自定义消息
- MFC使用SendMessage()发送自定义消息实现进程间通信
- MFC中使用GDI+绘制自定义的控件
- MFC使用SendMessage()发送自定义消息实现进程间通信
- 使用自定义图标的MFC工程因原图标文件丢失无法building的解决办法
- MFC中自由使用自定义消息
- MFC的自定义消息(用户消息)的定义与使用