MFC对话框添加 关闭按钮

MFC对话框添加 关闭按钮,第1张

假设有a对话框和b对话框。在a对话框上有个按钮,在a对话框代码里面添加#include"b.h"

然后在按钮的响应函数里面添加

b

thedlg

thedlg.domodal()

onok()

这样就打开b对话框和关闭a对话框了

1、关闭系统菜单:多种方式,修改对话框模板,SetWindowLong,修改CREATESTRUCT结构等,举例:在OnInitDialog()中添加:

SetWindowLong(this->m_hWnd,

GWL_STYLE,

GetWindowLong(this->m_hWnd,GWL_STYLE)

&

~WS_SYSMENU

)

2、屏蔽消息,如Alt+F4关闭等:在OnSysCommand中的

else

{

CDialog::OnSysCommand(nID,

lParam)

}

前面加上SC_CLOSE判断:

else

if(

nID

==

SC_CLOSE

)

{

//按下Alt+F4时,你的 *** 作,如显示一个提示消息,或什么也不做

}

else

{

CDialog::OnSysCommand(nID,

lParam)

}

3、如果你还想屏蔽ESC退出,那就重载,OnCancel(),并将其中的CDialog::OnCancel()注释掉。

4、还有一个OnOK()重载,如果同样处理,就只有通过任务管理器结束程序了。

这是自绘的控件,不是对话框上自带的

这种一般是 位图BUTTON 最常见的方法是 一副位图 包含4个按键状态位图

根据你不同的按键状态 用偏移量来切换显示位图

CBUTTON的自绘 DrawItem 里面实现就可以了.


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11801883.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存