在做属性表的时候,发现这样一个问题,属性表的最后一页是一个微调按钮和一个编辑框,我使用
BOOL CPage4::OnCommand(WPARAM wParam, LPARAM lParam) 
{
// TODO: Add your specialized code here and/or call the base class
SetModified(true);
return CPropertyPage::OnCommand(wParam, lParam);
}函数来使apply按钮有效,在第一个属性页的Onapply函数使apply按钮失效,
BOOL CPage1::OnApply() 
{
// TODO: Add your specialized code here and/or call the base class
SetModified(false);
    
m_pParentWnd->SendMessage(WM_USERAPPLY);
return CPropertyPage::OnApply();
}
现在的问题是1,2,3,页的apply按钮按下后都失效,唯独第4页按下去候不失效,
请问谁知道为什么?

解决方案 »

  1.   

    你到底希望做成什么样子,结果是什么样子?让人看得不知道什么意思!用CPropertySheet处理指定的按钮,要注意m_psp.dwFlags另外也可以挂一个回调函数!
      

  2.   

    就是属性表的OnApply按钮怎么样控制它的失效?
      

  3.   

    m_psh.dwFlags |= PSH_NOAPPLYNOW;
      

  4.   

    CWnd* pApplyButton = GetDlgItem (ID_APPLY_NOW);
      ASSERT (pApplyButton);
     //显示
      pApplyButton->ShowWindow (SW_NORMAL);或者
      //隐藏
      pApplyButton->ShowWindow (SW_HIDE);
      

  5.   

    你误解了!那个apply是个标准的按钮,每个属性表都有的。我现在发现问题了,因为我那个页有个编辑框,按下OnApply按钮它就重新获得焦点,我把编辑框的tab_stop属性去掉就可以!非常感谢大家!