建立mfc工程然後實現您要的功能
步驟:
1、
new 選擇project選項卡 ?
2、
選擇MFC AppWizard (exe) 填寫相關信息點擊確定就可以了
點擊運行,就可以出現圖形界面了,打開窗口設計文件可以添加控件到上面之類的。
算了吧!
#pragma?comment(linker,"/SUBSYSTEM:Windows?/ENTRY:mainCRTStartup")#include?<windows.h>
/*?使類名成為全局變量?*/
TCHAR?szClassName[?]?=?TEXT("WindowsApp");
/*?這個函數由Windows內部函數DispatchMessage()調用?*/
LRESULT?CALLBACK?WindowProcedure?(HWND?hWnd,?UINT?message,?WPARAM?wParam,LPARAM?lParam)
{
HDC?hdc?;
PAINTSTRUCT?ps?;
RECT?rect?;
switch?(message)?/*?處理信息?*/
{
case?WM_DESTROY:
PostQuitMessage?(0);?/*?發送WM_QUIT到消息隊列?*/
break;
case?WM_PAINT:
hdc?=?BeginPaint?(hWnd,?&ps)?;
GetClientRect?(hWnd,?&rect)?;
DrawText?(hdc,?TEXT("Hello,?Windows?NT!"),?-1,?&rect,?DT_SINGLELINE?|?DT_CENTER?|?DT_VCENTER)?;
EndPaint?(hWnd,?&ps)?;
break?;
default:?/*?不處理的消息?*/
return?DefWindowProc?(hWnd,?message,?wParam,?lParam);
}
return?0;
}
/*?下面是主函數?*/
int?main?(?void?)
{
HINSTANCE?hThisInstance?=?GetModuleHandle(NULL)?;
int?nFunsterStil?=?SW_SHOW?;
HWND?hWnd;?/*?這是窗口的句柄?*/
MSG?messages;/*?應用程序的消息保存在這裏?*/
WNDCLASSEX?wincl;/*?窗口類的數據結構?*/
/*?窗口結構?*/
wincl.hInstance?=?hThisInstance;
wincl.lpszClassName?=?szClassName;
wincl.lpfnWndProc?=?WindowProcedure;/*?這個函數由Windows操作系統調用?*/
wincl.style?=?CS_DBLCLKS;?/*?獲取雙擊指令?*/
wincl.cbSize?=?sizeof?(WNDCLASSEX);
/*?使用默認圖標和鼠標指針?*/
wincl.hIcon?=?LoadIcon?(NULL,?IDI_APPLICATION);
wincl.hIconSm?=?LoadIcon?(NULL,?IDI_APPLICATION);
wincl.hCursor?=?LoadCursor?(NULL,?IDC_ARROW);
wincl.lpszMenuName?=?NULL;?/*?沒有菜單?*/
wincl.cbClsExtra?=?0;/*?窗口類後面沒有多余的字節?*/
wincl.cbWndExtra?=?0;/*?結構或者窗口實例?*/
/*?使用窗口的默認顏色作為窗口的背景色?*/
wincl.hbrBackground?=?(HBRUSH)?COLOR_BACKGROUND;
/*?註冊窗口類。如果註冊失敗,那麽就退出程序?*/
if?(!RegisterClassEx?(&wincl))
return?0;
/*?窗口類已被註冊。創建它的程序?*/
hWnd?=?CreateWindowEx?(
0,
szClassName,/*?類名?*/
TEXT("Windows?App"),/*?窗口標題欄的文字?*/
WS_OVERLAPPEDWINDOW,?/*?默認窗口?*/
CW_USEDEFAULT,?/*?窗口左上角的位置?*/
CW_USEDEFAULT,?/*?窗口右下角的位置?*/
544,?/*?窗口寬度(以“像素”位單位)?*/
375,?/*?窗口高度(以“像素”位單位)?*/
HWND_DESKTOP,/*?窗口是桌面的子窗口?*/
NULL,/*?該窗口無菜單?*/
hThisInstance,?/*?程序實例的句柄?*/
NULL?/*?沒有窗口創建的數據?*/
);
/*?顯示窗口?*/
ShowWindow?(hWnd,?nFunsterStil);
/*?重繪窗口?*/
UpdateWindow(hWnd);
/*?運行消息循環。循環到GetMessage()函數返回0?*/
while?(GetMessage?(&messages,?NULL,?0,?0))
{
/*?把虛擬信息翻譯成字符信息?*/
TranslateMessage(&messages);
/*?發送信息到窗口過程?*/
DispatchMessage(&messages);
}
/*?返回PostQuitMessage()函數的返回值?*/
return?messages.wParam;
}