您的位置:首页 > 其它

MFC 窗口居中显示 VS2010

2015-01-28 17:32 405 查看

MFC 窗口居中显示 VS2010


(2011-09-11 19:52:05)


转载▼

标签:

窗口居中显示

it

分类: MFC
MFC窗口居中显示 VS2010 工程名为:MFC22_6

目的:点击居中按钮,窗口将在文档的中央显示
思路:
使窗口居中显示可以调用CWnd::CenterWindow函数。
void CenterWindow(CWnd* pAlternateOwner=NULL);
步骤:

1、 用创建一个单文档应用程序

2、 添加一个对话框资源//(类视图 右键—添加—资源—dialog即可)
ID为IDD_DEMO

3、 添加一个按钮
类型为BUTTON ,ID为 IDC_TEST 标题为 居中显示窗口

4、 创建一个基类为CDialog的类CdemoDlg(双击对话框)





5、点击“居中显示窗口”右键,类向导





“添加处理程序”,成员函数名称可不变,“确定”,然后“编辑代码”

void CAboutDlg::OnAfxIdPreviewClose()

{

// TODO: 在此添加命令处理程序代码

CenterWindow();

}

6、在CDemoDlg类中重载CDialog::PostNcDestroy函数,代码如下: //也添加在DemoDlg.cpp后
void CDemoDlg::PostNcDestroy()
{
delete this ;
}

//在DemoDlg.h后面添加

void PostNcDestroy();

在MainFrm.cpp前面添加头文件

#include "DemoDlg.h"

7、在IDR_MAINFRAME菜单资源中添加一个子菜单,在菜单中添加菜单项,如下:
ID_SHOW_DLG 显示非模式对话框

点击MFC22_6.rc文件——Menu——IDR_MAINFRAME





8、在CMainFrame类中为菜单项添加命令处理函数:

具体步骤如下:

在“显示非模式对话框”右键,“事件处理程序向导”,添加编辑





代码如下:

void CMainFrame::OnShowDlg()
{
CDemoDlg* pDlg=new CDemoDlg();
pDlg->Create(IDD_DEMO,this);
pDlg->ShowWindow(SW_SHOW);
}

DemoDlg.h中的

enum { IDD = IDD_DIALOG1 };

改为:

enum { IDD = IDD_DEMO };

在DemoDlg.h中添加:

public:

void PostNcDestroy();

9、运行即可

点击菜单“对话框”——子菜单“显示非模式对话框”——“居中显示窗口”按钮



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: