最近在编写MFC程序时,要用Tabctrl控件,系统工具箱自带的CTabCtrl控件在窗体改变大小时,其子窗体内部控件不好自适应改变大小,于是,网上查质料,找到基于CPropertySheet 和CPropertyPage类也可以实现类似TabCtrl控件(标签对话框),且其内部控件能很好的自适应窗体改变大小。。。。
但是,用CPropertySheet 和CPropertyPage类完成标签对话框的后,程序运行时,每个标签页上底部会留有有“确定”、“取消”和“删除”按钮(点击没有响应),影响程序界面的外观,上网查了一些资料,用以下方法,可以将标签对话框的三个按钮隐藏掉:
在CPropertySheet派生类的OnInitDialog()函数中加入以下语句即可
this->GetDlgItem( IDCANCEL )->ShowWindow( FALSE );
this->GetDlgItem(IDOK) ->ShowWindow(SW_HIDE);
this->GetDlgItem(IDHELP) ->ShowWindow(SW_HIDE);
注意,是函数OnInitDialog(),不是CPropertySheet派生类的构造函数,否者就会出现类似断言错误 ASS