6.6.1 CPropertySheet类

来源:互联网 发布:网络个人隐私泄露事件 编辑:程序博客网 时间:2024/05/08 20:04

6.6.1 CPropertySheet类

http://book.51cto.com  2007-08-31 13:21  李建华 王占全  电子工业出版社博文视点  我要评论(0)
  • 摘要:《Visual C++编程从基础到实践》第3章主要介绍的了MFC的概念及一些编程的基础。适合于Visual C++ 6.0的初学者和使用Visual C++从事开发的程序员;对于具有一定Visual C++编程经验的读者,也具有很好的参考价值。本文主要为CPropertySheet类。
  • 标签:CPropertySheet类  编程  Visual  C++  Visual C++编程从基础到实践
  • 限时报名参加“甲骨文全球大会·2010·北京”及“JavaOne和甲骨文开发者大会2010”

 

6.6.1  CPropertySheet类
CPropertySheet类是CWnd类的一个派生类。CProportySheet类的对象作为属性页对话框的窗口框架出现,主要实现管理各个属性页面的作用。
虽然CPropertySheet类不是CDialog类的派生类,但是在使用该类时却和CDialog类非常相似:首先运行CPropertySheet类的构造函数,然后调用DoModal函数实现一个模态属性页对话框,或者调用Creat函数实现一个非模态属性页对话框,CPropertySheet类的构造函数有两个。即CPropertySheet::Construct函数和CPropertySheet::CPropertySheet函数。在属性页对话框中进行数据交换和在普通对话框中进行数据交换类似,只是成员变量通常作为CPropertyPage类或其派生类的成员变量。
CPropertysheet类的主要成员如下。
m_psh
说明:m_psh是PROPSHEETHEADER结构类型的数据成员,主要定义属性页的框架和关于页面的信息。
CPropertySheet
其原型为:
 
说明:作为CPropertySheet类的构造函数之一,可以指定父级窗口,选择当前页面和设置属性页的标题。
Construct
其原型为:
 
说明:另一个CPropertySheet类的构造函数。当定义CPropertySheet类的对象而没有调用构造函数时,比如定义了CPropertySheet类的对象数组时,必须显式地调用Construct构造函数。
GetActiveIndex
其原型为:
int GetActiveIndex( ) const;
说明:用来获得属性框中当前激活页面的索引值。可以将返回值作为GetPage函数的参数。
GetPageIndex
其原型为:
int GetPageIndex( CPropertyPage* pPage ) const; 
说明:用来获得指定属性页的索引。
GetPageCount
其原型为:
int GetPageCount( );
说明:用来获得属性页对话框中当前属性页的个数,不包括已经定义了但是没有调用AddPage函数的属性页。
GetPage 
其原型为:
CPropertyPage* GetPage( int nPage ) const; 
说明:用来返回指定索引的属性页的指针。
GetActivePage 
其原型为:
CPropertyPage* GetActivePage( ) const;
说明:用来返回当前激活的属性页的指针。
SetActivePage 
其原型为:
BOOL SetActivePage( int nPage );
BOOL SetActivePage( CPropertyPage* pPage );
说明:用来将指定索引号或指针的属性页设置为激活页。
SetTitle 
其原型为:
void SetTitle( LPCTSTR lpszText, UINT nStyle = 0 );
说明:用来将设置属性页对话框的标题。
GetTabControl 
其原型为:
CTabCtrl* GetTabControl( );
说明:返回一个指向CTabCtrl类的指针。比如在初始化过程中想往标签中增加位图时就需要调用GetTabControl函数。
SetFinishText 
其原型为:
void SetFinishText( LPCTSTR lpszText );
说明:在向导对话框中,当完成了所有操作时,在“完成”(Finish)按钮上设置需要显示的文字,同时隐藏“上一页”( Back)按钮和“下一页”( Next)按钮。
SetWizardButtons 
其原型为:
void SetWizardButtons( DWORD dwFlags ); 
说明:在向导对话框中设置按钮的显示方式.必须在调用DoModal函数之后才可以调用SetWizardButtons函数。在属性页中可以通过调用CPropertyPage::OnSetActive函数来判断。
SetWizardMode 
其原型为:
void SetWizardMode( );
说明:设置属性页对话框为向导对话框模式。应该在调用DoModal函数之前调用SetWizardMode函数。
DoModal 
其原型为:
virtual int DoModal( ); 
说明:显示一个模态属性页。对于一般属性页,返回值为IDOKIDCANCEL或者0;对于向导对话框返回值为ID_WIZFINISH或IDCANCEL。
Create 
其原型为:
BOOL Create( CWnd* pParentWnd = NULL, DWORD dwStyle = (DWORD)–1, DWORD dwExStyle = 0 );
说明:显示一个非模态属性页。
AddPage 
其原型为:
void AddPage( CPropertyPage *pPage );
说明:往属性框中增加属性页。按照调用AddPage函数的顺序从左至右地显示属性页。在调用AddPage函数后,实际上并没有为该页创建相应的窗口,只有当属性页被激活时才为该属性页创建窗口。
在调试程序的时候,如果属性页对话框可以正常地显示并不说明所有属性页都正常,应该逐次激活每一个属性页并测试效果。当某个属性页被选中时出现问题,往往是在该属性页的初始化过程中导致的。
RemovePage 
其原型为:
void RemovePage( CPropertyPage *pPage );
void RemovePage( int nPage );
说明:从属性框中去除一个属性页。去除一个属性页的同时删除与之关联的窗口,但是CPropertyPage类的对象还存在。只有在属性框窗口被关闭后,CPropertyPage类的对象才被删除。
PressButton 
其原型为:
BOOL PressButton( int nButton );
说明:标识属性框中的特定按钮被按下。
EndDialog 
其原型为:
void EndDialog( int nEndID );
说明:关闭属性框。

【责任编辑:杨硕 TEL:(010)68476636-8001】
http://book.51cto.com/art/200708/54954.htm
回书目   上一节   下一节

原创粉丝点击