MFC最小程序(不使用应用程序向导)
使用MFC基礎(chǔ)類庫創(chuàng)建一個(gè)窗口,不使用VC++應(yīng)用程序向?qū)?#xff1b;
Win7, VC6;新建一個(gè)Win32項(xiàng)目;
創(chuàng)建一個(gè)空工程;
添加一個(gè)CPP代碼文件;
#include <afxwin.h>//應(yīng)用程序類 class COurApp : public CWinApp { public: virtual BOOL InitInstance(); ~COurApp(); };//窗口類 class COurWnd: public CWnd { public: COurWnd() { //構(gòu)造函數(shù) // Create(0,L"我們的MFC程序!"); CreateEx(0, AfxRegisterWndClass( CS_HREDRAW | CS_VREDRAW,LoadCursor (NULL, IDC_ARROW),(HBRUSH) GetStockObject (WHITE_BRUSH),0), "最小MFC", // "SplashWindow Sample", // WS_OVERLAPPED, WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, NULL); } };//實(shí)現(xiàn)類中的bai函數(shù) COurApp::~COurApp() { if(m_pMainWnd) delete m_pMainWnd; } BOOL COurApp::InitInstance(void) { m_pMainWnd = NULL; if(m_pMainWnd == NULL) m_pMainWnd = new COurWnd(); m_pMainWnd->ShowWindow(m_nCmdShow); return TRUE; }; COurApp myapp;"最小MFC",或使用 L"最小MFC"; 自己看;?
工程設(shè)置選中如下;使用MFC;
運(yùn)行程序;出錯(cuò);
nafxcw.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __endthreadex
nafxcw.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __beginthreadex
工程設(shè)置,C/C++ / 分類 / Code Generation / Multithreaded;
再運(yùn)行;窗口出來了;
沒有看到winMain的入口函數(shù);MFC基礎(chǔ)類庫已經(jīng)封裝了;程序運(yùn)行先執(zhí)行CxxxApp::InitInstance;然后如代碼所示,把窗口創(chuàng)建了;
?
如下代碼,基本一樣;
#include <afxwin.h>class CMyWinApp:public CWinApp{public:BOOL InitInstance(){CFrameWnd *pwin=new CFrameWnd;m_pMainWnd=pwin;pwin->Create(0,_T("Hello MFC"));pwin->ShowWindow(SW_SHOW);return TRUE;}};CMyWinApp theApp;如下代碼,構(gòu)建成功;但是運(yùn)行不顯示任何;有時(shí)間再看;
#include "afxwin.h"class CMinApp:public CWinApp { public:virtual BOOL InitInstance(); }; BOOL CMinApp::InitInstance() {CFrameWnd* pFrame = new CFrameWnd;m_pMainWnd = pFrame;pFrame->Create(0, _T("最小MFC程序"));pFrame->ShowWindow(SW_SHOW);//pFrame->UpdateWindow(); //system("pause");return TRUE; } CWinApp MyApp;?
總結(jié)
以上是生活随笔為你收集整理的MFC最小程序(不使用应用程序向导)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 百度地图API公交检索示例 - 标绘结果
- 下一篇: 超图桌面版使用模板创建数据源