#include "Stdafx.h"
#include "Hello.h"
#include "Resource.h"
CMyWinApp theApp; // application object
//---------------------------------------------------------------
// CMyWinApp's member
//---------------------------------------------------------------
BOOL CMyWinApp::InitInstance()
{
m_pMainWnd = new CMyFrameWnd();
m_pMainWnd->ShowWindow(m_nCmdShow);
m_pMainWnd->UpdateWindow();
return TRUE;
}
//---------------------------------------------------------------
// CMyFrameWnd's member
//---------------------------------------------------------------
CMyFrameWnd::CMyFrameWnd()
{
//Create(NULL, _T("Hello MFC"), WS_OVERLAPPEDWINDOW, rectDefault,NULL, _T("MainMenu")); // "MainMenu" 定义于 RC 档
//Create(NULL, _T("Hello MFC"), WS_OVERLAPPEDWINDOW, rectDefault,NULL,_T("IDR_MENU1"));
Create(NULL, _T("Hello MFC"), WS_OVERLAPPEDWINDOW, rectDefault,NULL,MAKEINTRESOURCE(IDR_MENU1));
///MAKEINTRESOURCE(ID)
}
//---------------------------------------------------------------
BEGIN_MESSAGE_MAP(CMyFrameWnd, CFrameWnd)
ON_COMMAND(ID_ABOUT_ABOUT, OnAbout)
ON_WM_PAINT()
END_MESSAGE_MAP()
//---------------------------------------------------
void CMyFrameWnd::OnPaint()
{
CPaintDC dc(this);
CRect rect;
GetClientRect(rect);
dc.SetTextAlign(TA_BOTTOM | TA_CENTER);
::LineDDA(rect.right/2, 0, rect.right/2, rect.bottom/2,
(LINEDDAPROC) LineDDACallback, (LPARAM) (LPVOID) &dc);
}
//---------------------------------------------------------------
VOID CALLBACK CMyFrameWnd::LineDDACallback(int x, int y, LPARAM lpdc)
{
static char szText[] = "Hello, MFC";
((CDC*)lpdc)->TextOut(x, y, _T("Hello, MFC"), sizeof(szText)-1);
for(int i=1; i<100000; i++); //
}
//---------------------------------------------------------------
void CMyFrameWnd::OnAbout()
{
CDialog about(MAKEINTRESOURCE(IDD_DIALOG1), this); //
int ret=about.DoModal();
if(IDOK==ret)
{
AfxMessageBox(_T("Error Creating Dialog Object"));
}
}