c++使用win32创建MFC

//mfc.h
#include <afxwin.h>

class MyApp :
	public CWinApp
{
public:
	//程序入口
	virtual BOOL InitInstance();

	MyApp();
	~MyApp();
};

class MyFrame ://窗口框架类
	public CFrameWnd
{
public:
	MyFrame();
	~MyFrame();
	afx_msg void OnLButtonDown(UINT, CPoint);
	afx_msg void OnChar(UINT, UINT, UINT);
	afx_msg void OnPaint();
	//声明宏
	DECLARE_MESSAGE_MAP()
};


//mfc.cpp
#include "mfc.h"

MyApp theApp;//全局应用程序对象,有且仅有一个

MyApp::MyApp()
{
}


MyApp::~MyApp()
{
}


MyFrame::MyFrame()
{
	Create(NULL, L"MFC");
}


MyFrame::~MyFrame()
{
}

BEGIN_MESSAGE_MAP(MyFrame,CFrameWnd)
	ON_WM_LBUTTONDOWN()
	ON_WM_CHAR()
	ON_WM_PAINT()
END_MESSAGE_MAP()

BOOL MyApp::InitInstance()
{
	//创建窗口
	MyFrame *frame = new MyFrame;

	//显示更新
	frame->ShowWindow(SW_SHOWNORMAL);
	frame->UpdateWindow();

	m_pMainWnd = frame;//保持指向应用程序的主窗口的指针


	return TRUE;
}

void MyFrame::OnLButtonDown(UINT, CPoint point)
{
	CString sss;
	sss.Format(L"x=%d y=%d", point.x, point.y);
	MessageBox(sss);
}

void MyFrame::OnChar(UINT key, UINT, UINT)
{
	CString sss;
	sss.Format(L"你按下了%c", key);
	MessageBox(sss);

}

void MyFrame::OnPaint()
{
	CPaintDC dc(this);

	dc.TextOutW(100, 100, L"你好");

	//画椭圆
	dc.Ellipse(200, 200, 300, 300);
	COLORREF test=dc.GetBkColor();
	int r = GetRValue(test);
	int g = GetGValue(test);
	int b = GetBValue(test);

}

猜你喜欢

转载自blog.csdn.net/daiyunxing0545/article/details/83181280
今日推荐