property.h
来自「Thinkinc++English 电子书籍,英文版」· C头文件 代码 · 共 51 行
H
51 行
// Property.h : Declaration of the CProperty
#ifndef __PROPERTY_H_
#define __PROPERTY_H_
#include "resource.h" // main symbols
/////////////////////////////////////////////////////////////////////////////
// CProperty
class ATL_NO_VTABLE CProperty :
public CComObjectRootEx<CComSingleThreadModel>,
public CComCoClass<CProperty, &CLSID_Property>,
public IDispatchImpl<IProperty, &IID_IProperty, &LIBID_SIMPLE18Lib>,
public IPersistPropertyBagImpl<CProperty>
{
public:
CProperty()
{
m_bRequiresSave = false;
m_integer = 0;
}
DECLARE_REGISTRY_RESOURCEID(IDR_PROPERTY)
DECLARE_PROTECT_FINAL_CONSTRUCT()
BEGIN_COM_MAP(CProperty)
COM_INTERFACE_ENTRY(IProperty)
COM_INTERFACE_ENTRY(IDispatch)
COM_INTERFACE_ENTRY(IPersistPropertyBag)
END_COM_MAP()
BEGIN_PROP_MAP(CProperty)
// 参数:"属性名称", 接口属性序号(见IDL文件), 属性页对话窗
PROP_ENTRY("str", 1, CLSID_NULL)
PROP_ENTRY("integer", 2, CLSID_NULL)
END_PROP_MAP()
// IProperty
public:
STDMETHOD(get_str)(/*[out, retval]*/ BSTR *pVal);
STDMETHOD(put_str)(/*[in]*/ BSTR newVal);
STDMETHOD(get_integer)(/*[out, retval]*/ long *pVal);
STDMETHOD(put_integer)(/*[in]*/ long newVal);
bool m_bRequiresSave;
CComBSTR m_str;
long m_integer;
};
#endif //__PROPERTY_H_
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?