一个SDI应用程序,对应的每个菜单项都调出一个对话框进行相应的处理。
一般的对话框都是popup风格,这种风格的dlg可以设置最大,最小按钮。
现在我想我的菜单项调出来的dlg也添加上最大化,最小化按钮(这个
容易,直接在属性里面改),但是,如果我点击最大化以后,它就会把整个
屏幕都占满了,不是象一般的子窗口那样,最大化也只占有主框架的客户区。如果我在dlg的属性里面设置未child,那么最大化和最小化按钮就没有(在
style里面就不可选择)。现在怎么实现这种子对话框?
一般的对话框都是popup风格,这种风格的dlg可以设置最大,最小按钮。
现在我想我的菜单项调出来的dlg也添加上最大化,最小化按钮(这个
容易,直接在属性里面改),但是,如果我点击最大化以后,它就会把整个
屏幕都占满了,不是象一般的子窗口那样,最大化也只占有主框架的客户区。如果我在dlg的属性里面设置未child,那么最大化和最小化按钮就没有(在
style里面就不可选择)。现在怎么实现这种子对话框?
HWND SetParent(
HWND hWndChild, // handle to window
HWND hWndNewParent // new parent window
);
void CMainFrame::OnShowtestdlg()
{
// TODO: Add your command handler code here
CTest1 *pdlg=new CTest1;
//dlg.DoModal();
pdlg->Create(IDD_DIALOG1,this);
pdlg->ShowWindow(SW_SHOW);
}可是得不到效果呀!我想得到象MDI这样的风格,
最大化子窗口就附在主窗框之内的那种效果
void CMainFrame::OnShowtestdlg()
{
// TODO: Add your command handler code here
CTest1 *pdlg=new CTest1;
//dlg.DoModal();
pdlg->Create(IDD_DIALOG1,this);
pdlg->SetParent(this);
pdlg->ShowWindow(SW_SHOW);
}不过最大化以后,出现的问题:
1.象MDI程序,子窗口最大化以后,其标题栏(主要说最大化,最小化,关闭按钮)
出现在主窗口的工具栏所在的行,也就是主窗框的菜单栏,而我最大化后出现在
主窗口的工具栏所在的行。
2.子窗口我设置了透明属性,在最大化以后,其标题栏的颜色(蓝色)怎么修改成
客户区的颜色?
怎麼解決以下二個問題1.象MDI程序,子窗口最大化以后,其标题栏(主要说最大化,最小化,关闭按钮)
出现在主窗口的工具栏所在的行,也就是主窗框的菜单栏,而我最大化后出现在
主窗口的工具栏所在的行。2.子窗口(dialog)有焦點時MDI主窗口沒有焦點
謝謝!!!