在PropertySheet和各个PropertyPage中使用一个公共变量,各个PropertyPage的ONOK函数(若没有用ClassWizard加入)分别给这个变量赋不同的值,在PropertySheet中看这个变量就可以了。

解决方案 »

  1.   

    CPropertySheet::GetActiveIndex();与CPropertySheet::GetActivePage(),你有没有看一下MSDN呢?如果你想在该页有东西要存的话,请重载CPropertyPage::OnOK(),CPropretySheet会自动调用它的。
      

  2.   

    这位大哥,我用的不是公共变量
    在PropertySheet按了确定按扭以后
    好象所有的ONOK函数都执行了呀?
    CPropertySheet MyPropSheet;
    if(MyPropSheet.DoModal()==IDOK)
       if(MyPropSheet.Page1.CurPage==1)
          ...
       else(...)
           ...
    该如何定义CurPage呀?
    多谢哦
      

  3.   

    GetActiveIndex()和GetActivePage()
    我试过不行的
    MSDN看过,不过有些地方不是很明白
    兄弟E文比较惨
      

  4.   

    重载WM_COMMAND消息:
    BOOL CMyPropertySheet::OnCommand(WPARAM wParam, LPARAM lParam) 
    {
    if(wParam==IDOK)
    {
    int k=GetActiveIndex();
    CString kk;
    kk.Format("Select Page=%d",k);
    AfxMessageBox(kk);
    }
    return CPropertySheet::OnCommand(wParam, lParam);
    }