MFC CPropertySheet 类 公共方法:CPropertySheet::GetPage
在 MFC(Microsoft Foundation Classes)中,CPropertySheet 类确实有名为 GetPage 的公共方法,用于获取指定索引处的属性页指针。这个方法允许你通过属性页的索引访问特定位置的属性页。以下是 CPropertySheet::GetPage 方法的简单示例用法:CPropertySheet propertySheet(_T("My Property Sheet"));CPage1 page1;CPage2 page2;propertySheet.AddPage(&page1);propertySheet.AddPage(&page2);// 获取指定索引处的属性页指针CPropertyPage* pPageAtIndex = propertySheet.GetPage(1);if (pPageAtIndex != nullptr) { // 在这里使用 pPageAtIndex 处理获取的属性页} else { // 指定索引处没有有效的属性页}在这个例子中,GetPage 方法被调用以获取位于...
MFC CPropertySheet 类 公共方法:CPropertySheet::GetActivePage
CPropertySheet 类确实有名为 GetActivePage 的公共方法,用于获取当前活动的属性页指针。这个方法返回一个指向 CPropertyPage 对象的指针,该对象表示当前用户在属性表单中查看的属性页。以下是 CPropertySheet::GetActivePage 方法的简单示例用法:CPropertySheet propertySheet(_T("My Property Sheet"));CPage1 page1;CPage2 page2;propertySheet.AddPage(&page1);propertySheet.AddPage(&page2);// 显示属性页对话框propertySheet.DoModal();// 获取当前活动的属性页指针CPropertyPage* pActivePage = propertySheet.GetActivePage();if (pActivePage != nullptr) { // 在这里使用 pActivePage 处理当前活动属性页的操作} else { /...
MFC CPropertySheet 类 公共方法:CPropertySheet::DoModal
CPropertySheet::DoModal 是 MFC(Microsoft Foundation Classes)中 CPropertySheet 类的一个公共方法,用于显示属性页对话框并返回用户的操作结果。这个方法通常用于模态地显示属性页对话框,阻止用户在对话框打开时与应用程序的其他部分进行交互。以下是 CPropertySheet::DoModal 方法的基本用法:INT_PTR DoModal();DoModal 方法返回一个 INT_PTR 值,表示用户对对话框的操作结果。通常,返回值为 IDOK 表示用户点击了对话框的确定按钮,而 IDCANCEL 表示用户点击了取消按钮。示例用法:CMyPropertySheet propertySheet(_T("My Property Sheet"));CPage1 page1;CPage2 page2;propertySheet.AddPage(&page1);propertySheet.AddPage(&page2);INT_PTR nResult = propertySheet.DoModa...
MFC CPropertySheet 类 公共方法:CPropertySheet::Create
在 MFC(Microsoft Foundation Classes)中,CPropertySheet::Create 是一个公共方法,用于创建并显示属性表(Property Sheet)。该方法用于动态创建属性表而不是在资源编辑器中静态定义。以下是 CPropertySheet::Create 方法的原型:BOOL Create(CWnd* pParentWnd = NULL, DWORD dwStyle = (DWORD)-1, DWORD dwExStyle = 0);这个方法接受三个参数: pParentWnd:对话框的父窗口指针。如果为 NULL,表示没有父窗口。 dwStyle:属性表的样式,可以使用标准的窗口样式,例如 WS_OVERLAPPED、WS_CAPTION 等。如果设置为 (DWORD)-1,表示使用默认样式。 dwExStyle:属性表的扩展样式。以下是一个简单的示例,演示如何使用 Create 方法:// 创建一个 CPropertySheet 对象CMyPropertySheet propertySheet(_T("My Property Sh...
MFC CPropertySheet 类 公共方法:CPropertySheet::AddPage
在 MFC(Microsoft Foundation Classes)中,CPropertySheet 类的 AddPage 是一个公共方法,用于向属性表中添加一个属性页。以下是 CPropertySheet::AddPage 方法的原型:int AddPage(CPropertyPage* pPage);这个方法接受一个指向 CPropertyPage 对象的指针,将该属性页添加到属性表中。方法返回一个整数,表示新添加的属性页的索引(从0开始),如果添加失败则返回 -1。以下是一个简单的示例,演示如何使用 AddPage 方法:// 创建一个 CPropertySheet 对象CMyPropertySheet propertySheet(_T("My Property Sheet"));// 创建并添加属性页CMyPropertyPage1 page1;CMyPropertyPage2 page2;propertySheet.AddPage(&page1);propertySheet.AddPage(&page2);// 显示属性表property...
MFC CPropertySheet 类 公共构造函数:CPropertySheet::CPropertySheet
在 MFC(Microsoft Foundation Classes)中,CPropertySheet 类的公共构造函数是:CPropertySheet::CPropertySheet(LPCTSTR pszCaption, CWnd* pParentWnd = NULL, UINT iSelectPage = 0);这个构造函数用于创建 CPropertySheet 对象,其中: pszCaption 参数是对话框的标题,是一个字符串。 pParentWnd 参数是对话框的父窗口指针,通常为 NULL,表示没有父窗口。 iSelectPage 参数是默认选中的属性页的索引,从0开始。默认值为0,表示选中第一个属性页。以下是一个简单的示例,演示如何使用这个构造函数:// 创建一个 CPropertySheet 对象CMyPropertySheet propertySheet(_T("My Property Sheet"));// 创建并添加属性页CMyPropertyPage1 page1;CMyPropertyPage2 page2;propertySheet.A...
MFC CPropertyPage 类 公共数据成员:CPropertyPage::m_psp
在 MFC(Microsoft Foundation Classes)中,CPropertyPage 类的 m_psp 是一个 PROPSHEETPAGE 结构体的成员,用于存储有关属性页的信息。PROPSHEETPAGE 结构体用于定义属性页的属性,包括窗口过程、资源标识符、标题等。以下是一个简单的示例,展示如何访问 m_psp 成员:// 假设你有一个自定义的 CMyPropertyPage 类class CMyPropertyPage : public CPropertyPage{ // ... // 示例函数,访问 m_psp 成员 void ExampleFunction() { // 获取 m_psp 成员的指针 PROPSHEETPAGE* pPageInfo = GetPSP(); // 修改属性页的标题 pPageInfo->pszTitle = _T("My Property Page"); }};在这个示例中,CMyPropertyPage 类继承自 C...
MFC CPropertyPage 类 公共方法:CPropertyPage::SetModified
在 MFC(Microsoft Foundation Classes)中,CPropertyPage::SetModified 是一个公共方法,用于设置或清除属性页(CPropertyPage)的修改标志。这个方法通常用于指示用户是否已经对属性页上的数据进行了更改。以下是一个简单的示例,展示如何使用 SetModified 方法:// 在 CMyPropertyPage.h 中声明class CMyPropertyPage : public CPropertyPage{ // ... // 设置或清除修改标志 void SetPageModified(BOOL bModified);};// 在 CMyPropertyPage.cpp 中实现void CMyPropertyPage::SetPageModified(BOOL bModified){ // 调用 SetModified 方法设置或清除修改标志 SetModified(bModified);}在这个示例中,CMyPropertyPage 类继承自 CPropertyPage,并添加了一个自定义...
MFC CPropertyPage 类 公共方法:CPropertyPage::QuerySiblings
在 MFC(Microsoft Foundation Classes)中,CPropertyPage::QuerySiblings 不是 CPropertyPage 类的公共方法。然而,QuerySiblings 函数是一个用于在属性页之间进行通信的常见技术。通常,QuerySiblings 函数被用于向兄弟属性页发送自定义消息或查询信息。该函数可以在属性页中使用,以与同一属性表(CPropertySheet)中的其他属性页进行通信。以下是一个简单的示例,展示如何使用 QuerySiblings 函数:// 在 CMyPropertyPage.h 中声明class CMyPropertyPage : public CPropertyPage{ // ... // 声明 QuerySiblings 函数 virtual BOOL OnQuerySiblings(WPARAM wParam, LPARAM lParam);};// 在 CMyPropertyPage.cpp 中实现BOOL CMyPropertyPage::OnQuerySiblings(WPARAM w...
MFC CPropertyPage 类 公共方法:CPropertyPage::OnWizardNext
在 MFC(Microsoft Foundation Classes)中,CPropertyPage::OnWizardNext 是一个虚拟函数,用于处理"Wizard"对话框的下一步按钮(Next)的消息。该函数在用户点击"Wizard"对话框上的下一步按钮时被调用,允许你执行一些自定义的操作。以下是一个简单的示例,展示如何重写 OnWizardNext 函数:// 在 CMyPropertyPage.h 中声明class CMyPropertyPage : public CPropertyPage{ // ... virtual LRESULT OnWizardNext();};// 在 CMyPropertyPage.cpp 中实现LRESULT CMyPropertyPage::OnWizardNext(){ // 执行在点击"Wizard"对话框上的下一步按钮时的操作 // 例如,可以进行验证,决定是否允许下一步 // 调用基类实现以确保处理基类的逻辑 return CProper...
MFC CPropertyPage 类 公共方法:CPropertyPage::OnWizardFinish
在 MFC(Microsoft Foundation Classes)中,CPropertyPage::OnWizardFinish 是一个虚拟函数,用于处理"Wizard"对话框的完成按钮(Finish)的消息。该函数在用户点击"Wizard"对话框上的完成按钮时被调用,允许你执行一些自定义的操作。以下是一个简单的示例,展示如何重写 OnWizardFinish 函数:// 在 CMyPropertyPage.h 中声明class CMyPropertyPage : public CPropertyPage{ // ... virtual BOOL OnWizardFinish();};// 在 CMyPropertyPage.cpp 中实现BOOL CMyPropertyPage::OnWizardFinish(){ // 执行在点击"Wizard"对话框上的完成按钮时的操作 // 例如,可以进行最终的验证,保存数据等 // 调用基类实现以确保处理基类的逻辑 return CProper...
MFC CPropertyPage 类 公共方法:CPropertyPage::OnWizardBack
在 MFC(Microsoft Foundation Classes)中,CPropertyPage::OnWizardBack 是一个虚拟函数,用于处理向后导航按钮(通常是"Wizard"对话框的后退按钮)的消息。该函数在用户点击向后导航按钮时被调用,允许你执行一些自定义的操作。以下是一个简单的示例,展示如何重写 OnWizardBack 函数:// 在 CMyPropertyPage.h 中声明class CMyPropertyPage : public CPropertyPage{ // ... virtual LRESULT OnWizardBack();};// 在 CMyPropertyPage.cpp 中实现LRESULT CMyPropertyPage::OnWizardBack(){ // 执行在点击向后导航按钮时的操作 // 例如,可以进行验证,决定是否允许后退 // 调用基类实现以确保处理基类的逻辑 return CPropertyPage::OnWizardBack();}在这个示例中,CMyPropert...
MFC CPropertyPage 类 公共方法:CPropertyPage::OnSetActive
在 MFC(Microsoft Foundation Classes)中,CPropertyPage::OnSetActive 是一个虚拟函数,用于处理当属性页(CPropertyPage)变为活动页(被显示为当前页)时的通知。该函数在属性页即将被显示时被调用,允许你执行一些初始化或显示操作。以下是一个简单的示例,展示如何重写 OnSetActive 函数:// 在 CMyPropertyPage.h 中声明class CMyPropertyPage : public CPropertyPage{ // ... virtual BOOL OnSetActive();};// 在 CMyPropertyPage.cpp 中实现BOOL CMyPropertyPage::OnSetActive(){ // 执行在属性页即将被显示时的初始化或显示操作 // 调用基类实现以确保处理基类的逻辑 return CPropertyPage::OnSetActive();}在这个示例中,CMyPropertyPage 类继承自 CPropertyPage,并重写了 OnS...
MFC CPropertyPage 类 公共方法:CPropertyPage::OnReset
在 MFC(Microsoft Foundation Classes)中,CPropertyPage::OnReset 是一个虚拟函数,用于处理当用户点击属性页上的"Reset"按钮时的消息。该函数在用户点击"Reset"按钮并且属性页需要还原到先前的状态时被调用,允许你执行一些操作以处理这个事件。以下是一个简单的示例,展示如何重写 OnReset 函数:// 在 CMyPropertyPage.h 中声明class CMyPropertyPage : public CPropertyPage{ // ... virtual void OnReset();};// 在 CMyPropertyPage.cpp 中实现void CMyPropertyPage::OnReset(){ // 执行在点击"Reset"按钮时的操作 // 例如,还原属性页到先前的状态 // 调用基类实现以确保处理基类的逻辑 CPropertyPage::OnReset();}在这个示例中,CMyPropertyPage...
MFC CPropertyPage 类 公共方法:CPropertyPage::OnOK
在 MFC(Microsoft Foundation Classes)中,CPropertyPage::OnOK 是一个虚拟函数,用于处理当用户点击属性页上的"OK"按钮时的消息。该函数在用户点击"OK"按钮并且属性页准备关闭之前被调用,允许你执行一些操作以处理这个事件。以下是一个简单的示例,展示如何重写 OnOK 函数:// 在 CMyPropertyPage.h 中声明class CMyPropertyPage : public CPropertyPage{ // ... virtual void OnOK();};// 在 CMyPropertyPage.cpp 中实现void CMyPropertyPage::OnOK(){ // 执行在点击"OK"按钮时的操作 // 例如,保存属性页上的修改 // 调用基类实现以确保处理基类的逻辑 CPropertyPage::OnOK();}在这个示例中,CMyPropertyPage 类继承自 CPropertyPage,并重写了 OnOK 函...
MFC CPropertyPage 类 公共方法:CPropertyPage::OnKillActive
在 MFC(Microsoft Foundation Classes)中,CPropertyPage::OnKillActive 是一个虚拟函数,用于处理当用户试图切换到另一个属性页时的通知。具体而言,该函数在当前属性页将失去焦点之前被调用,允许你在离开当前属性页之前进行一些验证或处理。以下是一个简单的示例,展示如何重写 OnKillActive 函数:// 在 CMyPropertyPage.h 中声明class CMyPropertyPage : public CPropertyPage{ // ... virtual BOOL OnKillActive();};// 在 CMyPropertyPage.cpp 中实现BOOL CMyPropertyPage::OnKillActive(){ // 执行在离开当前属性页之前的验证或处理 // 如果返回 FALSE,表示禁止切换到另一个属性页 // 调用基类实现以确保处理基类的逻辑 return CPropertyPage::OnKillActive();}在这个示例中,CMyPropertyPag...
MFC CPropertyPage 类 公共方法:CPropertyPage::OnCancel
在 MFC(Microsoft Foundation Classes)中,CPropertyPage::OnCancel 是一个虚拟函数,用于处理属性页上的"Cancel"按钮的消息。该函数在用户点击属性页上的"Cancel"按钮时被调用,允许你执行一些操作以处理取消操作。以下是一个简单的示例,展示如何重写 OnCancel 函数:// 在 CMyPropertyPage.h 中声明class CMyPropertyPage : public CPropertyPage{ // ... virtual void OnCancel();};// 在 CMyPropertyPage.cpp 中实现void CMyPropertyPage::OnCancel(){ // 执行取消操作,可能包括清除临时数据等 // 调用基类实现以确保处理基类的逻辑 CPropertyPage::OnCancel();}在这个示例中,CMyPropertyPage 类继承自 CPropertyPage,并重写了 OnCancel 函数。在实际...
MFC CPropertyPage 类 公共方法:CPropertyPage::OnApply
在 MFC(Microsoft Foundation Classes)中,CPropertyPage::OnApply 是一个虚拟函数,用于处理属性页上的"Apply"按钮的消息。该函数在用户点击属性页上的"Apply"按钮时被调用,允许你执行一些操作以保存或应用属性页上的更改。以下是一个简单的示例,展示如何重写 OnApply 函数:// 在 CMyPropertyPage.h 中声明class CMyPropertyPage : public CPropertyPage{ // ... virtual void OnApply();};// 在 CMyPropertyPage.cpp 中实现void CMyPropertyPage::OnApply(){ // 执行保存或应用更改的操作 // 例如,更新配置、写入文件等 // 调用基类实现以确保处理基类的逻辑 CPropertyPage::OnApply();}在这个示例中,CMyPropertyPage 类继承自 CPropertyPage,并重写了 On...
MFC CPropertyPage 类 公共方法:CPropertyPage::GetPSP
CPropertyPage::GetPSP 是 MFC(Microsoft Foundation Classes)中的一个公共方法,用于获取指向属性页(CPropertyPage)的 PROPSHEETPAGE 结构体的指针。PROPSHEETPAGE 结构体用于定义属性页的属性,包括窗口过程、资源标识符、标题等。下面是一个简单的示例,演示如何使用 GetPSP 方法:// 获取属性页的指针CPropertyPage* pPage = new CMyPropertyPage; // CMyPropertyPage 是你的自定义属性页类PROPSHEETPAGE* pPageInfo = pPage->GetPSP();// 修改属性页的标题pPageInfo->pszTitle = _T("My Property Page");// 添加属性页到属性表CPropertySheet sheet(_T("My Property Sheet"));sheet.AddPage(pPage);// 显示属性表sheet.DoModal();//...
MFC CPropertyPage 类 公共方法:CPropertyPage::SetModified
在 MFC(Microsoft Foundation Classes)中,CPropertyPage 类确实有一个名为 SetModified 的公共方法。SetModified 方法用于设置或清除属性页的修改标志,这一标志通常用于指示用户是否对属性页所做的更改需要保存。以下是 CPropertyPage::SetModified 方法的原型:void SetModified(BOOL bChanged = TRUE); bChanged:如果为 TRUE,则表示属性页已被修改;如果为 FALSE,则表示属性页未被修改。通过调用 SetModified 方法,您可以在属性页上设置或清除修改标志。当属性页的内容发生变化时,通常在相应的事件处理程序中调用该方法,以确保用户在关闭对话框或应用程序时能够得到适当的提示。示例代码:class MyPropertyPage : public CPropertyPage{public: // ... void SomeFunction() { // 标记属性页已被修改 SetModified(TRUE);...