在使用这个方法之前,您需要确保您的类继承自 CMFCPropertyGridProperty,或者您有适当的权限访问这个受保护方法。
以下是一个简单的示例,演示如何使用 IsValueChanged 方法:
class MyProperty : public CMFCPropertyGridProperty
{
public:
MyProperty(const CString& strName, const COleVariant& varValue, LPCTSTR lpszDescr = NULL, DWORD_PTR dwData = 0)
: CMFCPropertyGridProperty(strName, varValue, lpszDescr, dwData)
{
}
// 添加您的属性类的其他方法和成员变量
// 使用IsValueChanged方法检查属性值是否已更改
bool HasValueChanged() const
{
return IsValueChanged();
}
};
// 在某处使用MyProperty类
MyProperty* pMyProp = new MyProperty(_T("MyProperty"), COleVariant(42));
bool valueChanged = pMyProp->HasValueChanged();
请注意,IsValueChanged 是一个受保护的方法,因此您需要在您的派生类中提供公共的方法(如上例中的 HasValueChanged)来访问这个功能。这样,您就可以在您的应用程序中使用这个方法来检查属性值是否已更改。
转载请注明出处:http://www.zyzy.cn/article/detail/19600/MFC/CMFCPropertyGridProperty