MFC对话框和子对话框的问题

runningfatty 2017-07-18 09:47:40
写了一个MFC基于对话框的程序,里面有按钮弹出子对话框,但是子对话框在下面的任务栏中没有,只有主对话框的标志,而且子对话框一直都处于z次序的最顶端,我在WM_ACTIVATE中设置SetWindowPos也没法让主窗口放到最顶层,求解答
...全文
116 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
runningfatty 2017-07-18
  • 打赏
  • 举报
回复
刚找到问题了,我在对话框属性里面把TopMost开了 现在不会让两个窗口一直显示在最顶层了,但是还有问题就是为啥我点击主窗口的时候子窗口也会显示出来而且子窗口一直在主窗口的上面??
runningfatty 2017-07-18
  • 打赏
  • 举报
回复
引用 2 楼 schlafenhamster 的回复:
“MultiDialog.zip” http://download.csdn.net/detail/schlafenhamster/611573 “基于多对话框的MFC工程.避免模态对话框中产生新的模态对话框.” 另外 1 protected: HICON m_hIcon; 2 CDialogA::CDialogA(CWnd* pParent /*=NULL*/) : CDialog(CDialogA::IDD, pParent) { //{{AFX_DATA_INIT(CDialogA) // NOTE: the ClassWizard will add member initialization here //}}AFX_DATA_INIT m_hIcon = AfxGetApp()->LoadIcon(IDI_ICONA); } 3 BOOL CDialogA::OnInitDialog() { CDialog::OnInitDialog(); // TODO: Add extra initialization here SetIcon(m_hIcon, TRUE); // Set big icon SetIcon(m_hIcon, FALSE); // Set small icon return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE } 4 加 2个 ICON(IDI_ICONA,IDI_ICONB)每个2个大小(48*48,16*16)
我创建的第二个对话框是一个非模态对话框 另外我想问下,为啥我的窗口点击的时候一直没办法把窗口置顶呢 而且可能我自己用SetWindowPos的问题,其他的窗口全都没法置顶了
runningfatty 2017-07-18
  • 打赏
  • 举报
回复
引用 1 楼 zgl7903 的回复:
窗口具有 WS_EX_APPWINDOW 扩展风格 就会显示在任务栏
多谢
schlafenhamster 2017-07-18
  • 打赏
  • 举报
回复
“MultiDialog.zip”
http://download.csdn.net/detail/schlafenhamster/611573
“基于多对话框的MFC工程.避免模态对话框中产生新的模态对话框.”
另外
1
protected:
HICON m_hIcon;

2
CDialogA::CDialogA(CWnd* pParent /*=NULL*/)
: CDialog(CDialogA::IDD, pParent)
{
//{{AFX_DATA_INIT(CDialogA)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
m_hIcon = AfxGetApp()->LoadIcon(IDI_ICONA);
}


3
BOOL CDialogA::OnInitDialog() 
{
CDialog::OnInitDialog();

// TODO: Add extra initialization here
SetIcon(m_hIcon, TRUE); // Set big icon
SetIcon(m_hIcon, FALSE); // Set small icon

return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}


4 加 2个 ICON(IDI_ICONA,IDI_ICONB)每个2个大小(48*48,16*16)
zgl7903 2017-07-18
  • 打赏
  • 举报
回复
窗口具有 WS_EX_APPWINDOW 扩展风格 就会显示在任务栏
runningfatty 2017-07-18
  • 打赏
  • 举报
回复
找到问题了,我在创建子对话框的
引用 6 楼 schlafenhamster 的回复:
点击主窗口的时候子窗口也会显示出来;子窗口是模态 而且子窗口一直在主窗口的上面;子窗口 一定在 主窗口 上面 你可以 改变 子窗口 的 父 窗口 为 Desktop
谢了,已经解决了
runningfatty 2017-07-18
  • 打赏
  • 举报
回复
找到问题了,我在创建子对话框的
引用 6 楼 schlafenhamster 的回复:
点击主窗口的时候子窗口也会显示出来;子窗口是模态 而且子窗口一直在主窗口的上面;子窗口 一定在 主窗口 上面 你可以 改变 子窗口 的 父 窗口 为 Desktop
谢了,已经解决了
schlafenhamster 2017-07-18
  • 打赏
  • 举报
回复
点击主窗口的时候子窗口也会显示出来;子窗口是模态 而且子窗口一直在主窗口的上面;子窗口 一定在 主窗口 上面 你可以 改变 子窗口 的 父 窗口 为 Desktop

15,979

社区成员

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

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