怎样在父对话框中通过按钮销毁子对话框

lxstu 2011-04-26 09:41:20
最近在做对话框的编程,在父对话框中放了几个按钮,编号为1、2...... 我要做的工作就是点击按钮1,创建一个非模态对话框,而点击按钮2销毁这个非模态对话框。现在的情况是点击按钮1能够实现非模框的显示,但是点击按钮2销毁对话框我就不知道怎么添加代码了。其实最简单的方法就是点对话框的右上角,但是最后我要把非模框的Border设置为None,确定和取消按钮都不显示。请问大家,我该怎样做才能实现在父对话框中对子对话框的关闭控制啊。
...全文
73 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
lxstu 2011-04-27
  • 打赏
  • 举报
回复
谢谢大家,问题已经解决。我在主对话框的头文件中实例化了一个子对话框的指针对象,然后在OnButton里面响应pDlg->DestroyWindow()。
Eleven 2011-04-26
  • 打赏
  • 举报
回复
销毁非模态对话框DestroyWindow,如果是new的,记得还要delete掉
CppCoder 2011-04-26
  • 打赏
  • 举报
回复
BOOL PostMessage(
HWND hWnd, // handle to destination window
UINT Msg, // message
WPARAM wParam, // first message parameter
LPARAM lParam // second message parameter
);
LRESULT SendMessage(
HWND hWnd, // handle to destination window
UINT Msg, // message
WPARAM wParam, // first message parameter
LPARAM lParam // second message parameter
);
Msg可以用:
WM_CLOSE
WM_DESTROY
WM_QUIT
EastBird_Hz 2011-04-26
  • 打赏
  • 举报
回复
1楼正解,不过需要记录你启用子窗口的句柄,向其发送WM_CLOSE消息,否则会失败。
hzy694358 2011-04-26
  • 打赏
  • 举报
回复
创建窗口是不会会有窗口句柄吗,
保留那些句柄,到时候DestroyWindow
aiwnx 2011-04-26
  • 打赏
  • 举报
回复
朝子对话框的窗口发送WM_CLOSE消息不就可以了么
onlyliu 2011-04-26
  • 打赏
  • 举报
回复
hwnd->sendmessage(WM_CLOSE,0,0);

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧