您的位置:首页 > Web前端 > HTML

MFC取消HtmlDialog对话框的"确定"和"取消"按钮方法

2012-09-14 00:04 941 查看
我们把对话框的Style设置为Child的时候会发现确定和取消按钮会存在,即便你把界面上的“确定”“取消”按钮去掉了发现他还是存在,而且排列方式是竖式,这时候有点是不是有点无奈呢?好那我们说说去掉这两个默认按钮的方法,还有去除他们的消息响应。

首先我们右击解决方法的.rc文件,点击查看代码,找到对话框的ID比如我里面有个子级对话框IDD_DIALOG_COMMAND,那我就找到它。这时候你发现在这个对话框代码里面有这么两行代码:

DEFPUSHBUTTON "确定",IDOK,39,62,50,14
PUSHBUTTON "取消",IDCANCEL,103,62,50,14

把这两行代码删除掉。

接着打开对应对话框的htm文件(比如你对对话框新建类CommandDlg)找到后打开他,你会看到这样的一些代码

<HTML>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"/>
<BODY ID=CCommandDlg BGCOLOR=LIGHTGREY>

<TABLE WIDTH=100%>
<TR>
<TD ALIGN=RIGHT>
<BUTTON STYLE="WIDTH:100" ID="ButtonOK">确定</BUTTON><BR>
<BUTTON STYLE="WIDTH:100" ID="ButtonCancel">取消</BUTTON>
</TD>
</TR>
<TR WIDTH=100% HEIGHT=75>
<TD ALIGN=CENTER VALIGN=BOTTOM>
TODO: 在此放置控件。
</TD>
</TR>
</TABLE>

恩,看到你要删除的东西了没有呢?把一下三行代码删除掉:

TODO: 在此放置控件。

<BUTTON STYLE="WIDTH:100" ID="ButtonOK">确定</BUTTON><BR>

<BUTTON STYLE="WIDTH:100" ID="ButtonCancel">取消</BUTTON>

好了控件删除之后呢,接着我们删除消息映射跟响应

单击对话框类发现里面有OnButtonCancel和OnButtonOK这两个函数,点击进入编辑把以下代码删除了:

HRESULT CTimeDlg::OnButtonOK(IHTMLElement* /*pElement*/)
{
OnOK();
return S_OK;
}

HRESULT CTimeDlg::OnButtonCancel(IHTMLElement* /*pElement*/)
{
OnCancel();
return S_OK;
}

还有消息映射:

DHTML_EVENT_ONCLICK(_T("ButtonOK"), OnButtonOK)
DHTML_EVENT_ONCLICK(_T("ButtonCancel"), OnButtonCancel)

如果你还想删除他的ID,接着打开Resource文件把属于此界面的按钮ID也删除了!

好了手工,这下运行看到tab的子级对话框中是不是已经没有烦人的文本跟那两个默认按钮了呢!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐