一个非模式对话框的问题

yjje 2007-05-28 03:53:24
a.cpp通过下面方法调用 b.cpp
b *bb = new b;
bb->Create(IDD_DIALOG1,NULL);
bb->ShowWindow(SW_SHOW);

这样虽然窗口可以出来.但为何a 窗口始终在b窗口下方.

当鼠标点击A时也是一样.

我想实现点击A时A在上面,点击B时B在上面,

当A最小化时B不用跟着A窗口同时最小化.

我上面的代码会让B跟随A一起最小化,

是我那里写错了呢.

请大家帮帮忙,
...全文
203 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
yjje 2007-05-29
  • 打赏
  • 举报
回复
akirya

a *b = bb;
b->create(id,CWnd::GetDesktopWindow())这样可以实现,

让它以桌面为它的父类.

如果用 a*b = new bb(CWnd::GetDesktopWindow());
这样我的不行不过也给分.呵.
yjje 2007-05-28
  • 打赏
  • 举报
回复
还是不行呀.

SEND *SENDDLG;

void CFormDlg::OnDblclkList3(NMHDR* pNMHDR, LRESULT* pResult)
{
if( SENDDLG != NULL && ::IsWindow(SENDDLG->m_hWnd) )
{
return ;
}
else
{
            //SENDDLG = new SEND;
            SENDDLG = new SEND(CWnd::GetDesktopWindow() );

SENDDLG->Create(IDD_DIALOG1,NULL);
SENDDLG->ShowWindow(SW_SHOW);
}

*pResult = 0;
}

看别人搞的.  从A 引出B窗口, 点击A时B会在最上方. 最小化A时B是不会跟着最小化.为何我的就不行呢....


  • 打赏
  • 举报
回复
b *bb = new b(CWnd::GetDesktopWindow() );

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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