在view类中,
void CTest2View::OnPropsheet()
{
// TODO: Add your command handler code here
CPROPSHEET propsheet("test");
propsheet.SetWizardMode();
propsheet.DoModal();
}
添加后,在属性页里出现“上一步、下一步向导”
但是每个属性页出现的向导都是一样的,如都有上一步、下一步、取消
但我想要的是第一个属性页没有“上一步”。最后一页没有下一步;
这时就要在每一个属性页分别设置向导:
在每个属性页添加虚函数:
OnSetActive()
{
((CPropertySheet*)GetParent()) -> SetWizardButtons(PSWIZB_NEXT)。
}
在页面上输出属性框的内容:
在"向导"中选择完成按钮后,将内容显示在页面上.
首先当选择完成按扭时,
即ID_WIZFINISH==propsheet.DoModal()
这时要重绘窗口,以便在新窗口中显示内容,
重绘窗口:Invalidate();
然后在DRAW函数中重绘窗口:
pDC->TextOut(0,0,"ok");
注:如何去调用属性表单的成员函数呢?如果我们能获得属性表单的指针即可调用它的成员函数,我们的属性页是增加到属性表单中的,也就是说属性表单是属性页的父窗口;
我们使用GetParent()来获得属性表单的指针,即属性表单的指针;GetParent()返回的是CWnd类型的指针,我们要调用属性表单的指针,就要做一个转换:((CPropertySheet*)GetParent()),然后指向设置向导按钮的函数SetWizardButtons(PSWIZB_NEXT);即((CPropertySheet*)GetParent()) -> SetWizardButtons(PSWIZB_NEXT)。