我的是基于对话框程序,该对话框上没有最大和最小按钮
我重载了 PreCreateWindow(),想用代码给它添加最小按钮,可是却没有起作用BOOL CTestDlgDlg::PreCreateWindow(CREATESTRUCT& cs)
{
// TODO: Add your specialized code here and/or call the base class
cs.style &= WS_MINIMIZEBOX ;
return CDialog::PreCreateWindow(cs);
}为什么呢?
我重载了 PreCreateWindow(),想用代码给它添加最小按钮,可是却没有起作用BOOL CTestDlgDlg::PreCreateWindow(CREATESTRUCT& cs)
{
// TODO: Add your specialized code here and/or call the base class
cs.style &= WS_MINIMIZEBOX ;
return CDialog::PreCreateWindow(cs);
}为什么呢?
应该为
cs.style |=WS_MINIMIZEBOX ;
回复人: hiiiiiijiang() ( ) 信誉:105
----------------------------------------
不是啊,应该是cs.style &= WS_MINIMIZEBOX ;吧
而且我试过你的也不行
应该为
cs.style |=WS_MINIMIZEBOX ;我也这么认为。
ModifyStyle试过了,这个方法可以。PreCreateWindow(CREATESTRUCT& cs)的调用在Create中。
frame、view用这种方法设置可以。我在多次跟踪后发现,frame、view在创建时调用PreCreateWindow(CREATESTRUCT& cs)
而Dialog的各种Create函数都不调用。
MSDN的说明也是用frame、view举的例子。so,Dialog只能用ModifyStyle设置。 :(