1. 程式人生 > >我的MFC練習(1)

我的MFC練習(1)

這兩天,由於使用MFC做東西,看了不少的例子,始終不得要領,我的疑惑點是控制元件好建,但對應的訊息函式往哪放則搞不明白。

下面這個例子,假設你有點C++基礎,再假設你不是特別著急,完全可以手抄下來,混個眼熟。這個例子,主要集成了兩個基礎類:CWinApp和CFrameWnd,如果你用mfc應用程式寫的話,一定不會對這兩個類陌生。

用vc++6.0:“NEW”->"projections"->"Win32 App"->建立一個32位程式(Hello)。

在此工程下新建C++原始檔(helloworld)

#include<afxwin.h>
//shuoing app class
class CHelloApp:public CWinApp
{
public:
	virtual BOOL InitInstance();
	
};
//bulid Init
CHelloApp HelloApp;
class CHelloWindow:public CFrameWnd
{
	CStatic* cs;
public:
	CHelloWindow();
};
//first use init
BOOL CHelloApp::InitInstance()
{
	m_pMainWnd=new CHelloWindow();
	m_pMainWnd->ShowWindow(m_nCmdShow);
	m_pMainWnd->UpdateWindow();
	return true;
}
//construction for windows
CHelloWindow::CHelloWindow()
{
	//bulid window for itself
	Create(NULL,"Hello,Woprld!",WS_OVERLAPPEDWINDOW,CRect(0,0,200,200));
	//labs
	cs=new CStatic();
	cs->Create("hello world",WS_CHILD|WS_VISIBLE|SS_CENTER,CRect(50,80,150,150),this);
		
}

編譯,等等,這樣直接是不會執行的,需要在“project”->"settings "的MFC類中選擇“share MFC as all”

執行結果如下

後記:CWinApp,CWnd,CFrameWnd,CDiglog,CView需要熟記。

本文是用C++建立控制元件的,還可以使用資原始檔管理啊

非常不錯的參考文章