模式对话框不是设置风格的问题,如果你想要显示一个无模式对话框的话,
应该
CPerson* pDlg = new CPerson;
pDlg->Create(IDD_yourdialog,this);
在你要显示的时候调用
pDlg->ShowWindow(SW_SHOW);
就行了,不需要设置风格
应该
CPerson* pDlg = new CPerson;
pDlg->Create(IDD_yourdialog,this);
在你要显示的时候调用
pDlg->ShowWindow(SW_SHOW);
就行了,不需要设置风格
比如,你可以传入Dlg.hWnd(不要写成&Dlg.hWnd,不是传入地址,使数据)
pDlg-> Create(IDD_yourdialog,this);
你这样做后,就会弹出一个非模态的对话框!
Dlg.ModifyStyle (WS_CHILD,WS_POPUP|WS_BORDER|WS_CAPTION);
SetWindowLong((HWND)& Dlg,GWL_EXSTYLE, WS_POPUP|WS_BORDER|WS_CAPTION);
Dlg.DoModal();
在Dlg.DoModal()之前,Dlg.ModifyStyle没有办法调用,因为这时候窗口还没有创建
所以你只好在CPerson::OnInitDialog里面修改style和style_ex了,或者CPerson Dlg(style,style_ex) 也可以,自己定义构造函数