#include <afxwin.h>
//应用程序类
class COurApp : public CWinApp
{
public:
virtual BOOL InitInstance()
~COurApp()
}
//窗口类
class COurWnd: public CWnd
{
public:
COurWnd()
{
//构造函数
// Create(0,L"我们的MFC程序!")
CreateEx(0,
AfxRegisterWndClass(
CS_HREDRAW | CS_VREDRAW,LoadCursor (NULL, IDC_ARROW),(HBRUSH) GetStockObject (WHITE_BRUSH),0),
L"ssssssssssssssss",
//"SplashWindow Sample",
// WS_OVERLAPPED,
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,
NULL,
NULL,
NULL)
}
}
//实现类中的函数
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
大致步骤,新建win32项目,然后在工程属性中把使用标准windows库改为在静态库或动态库中使用mfc。代码适用于vc2008 unicode工程中,如果是非unicode,请把字符串常量前大写的L去掉
对话框建好,加上类,然后在按钮所在类(头文件中或者cpp中都可以)加上#include那个头文件,然后定义一个全局变量,比如 Cxx a 然后在按钮的函数中添加,a.DoModal()这个是模态对话框,非模态的话,void CMainFrame::OnModelessdlg() //创建非模态对话框if (!a.m_hWnd) //判断对话框是否已被创建
{
a.Create(IDD_xx) //创建对话框ID
}
a.ShowWindow(SW_SHOW)
生成一个CWnd实例就可以,用的时候Create,比如void CMyDlg::OnCreateStatic()
{
CWnd* pWnd = new CWnd
pWnd->Create(_T("STATIC"), "Hi", WS_CHILD | WS_VISIBLE,
CRect(0, 0, 20, 20), this, 1234)
}
关闭它用CWnd::DestroyWindow
也可以从CWnd派生自己的窗口类,用法跟上面一样
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)