高分求教:关于如何知道显示第几个属性页的问题?

bdtian 2003-08-24 06:50:26
我在一个主对话框里定义了一个CPropertySheet sheet对象,并为改对象AddPage()了几个CPropertyPage对象,现在我想点击某一页就知道显示的是第几页,如何作呢?我用
OnSetActive()重载不行呀。
...全文
24 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
yushulei 2003-08-28
  • 打赏
  • 举报
回复
gz
bcpl 2003-08-28
  • 打赏
  • 举报
回复
从CPropertyPage派生自己的类,在其中处理OnSetActive
bager 2003-08-28
  • 打赏
  • 举报
回复
重载OnSetActive()函数,其内部调用父类的GetActiveIndex方法,实现如下:
BOOL CYourPropertyPage::OnSetActive()
{
CYourPropertySheet *pSheet = (CYourPropertySheet *)GetParent();
CString strCurPage;
strCurPage.Format("Current Page:%d",pSheet->GetActiveIndex());
AfxMessageBox(strCurPage);
return CPropertyPage::OnSetActive();
}
akiko 2003-08-24
  • 打赏
  • 举报
回复
知道当前显示的是第几页int CPropertySheet::GetActiveIndex( ) const;
知道指定的Page是第几页int CPropertySheet::GetPageIndex(CPropertyPage* pPage) const;
指定要显示的Page:
BOOL CPropertySheet::SetActivePage( int nPage );
BOOL CPropertySheet::SetActivePage( CPropertyPage* pPage );

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧