Aracılığıyla paylaş


CPropExchange Sınıfı

OLE denetimleriniz için kalıcılık uygulamasını destekler.

Sözdizimi

class AFX_NOVTABLE CPropExchange

Üyeler

Genel Yöntemler

Ad Tanım
CPropExchange::ExchangeBlobProp İkili büyük nesne (BLOB) özelliğini değiştirir.
CPropExchange::ExchangeFontProp Yazı tipi özelliğini değiştirir.
CPropExchange::ExchangePersistentProp Bir denetimi ve dosyayı arasında bir özelliği değiştirir.
CPropExchange::ExchangeProp Herhangi bir yerleşik türün özelliklerini değiştirir.
CPropExchange::ExchangeVersion OLE denetiminin sürüm numarasını değiştirir.
CPropExchange::GetVersion OLE denetiminin sürüm numarasını alır.
CPropExchange::IsAsynchronous Özellik değişimlerinin zaman uyumsuz olarak yapılıp yapılmadığını belirler.
CPropExchange::IsLoading Özelliklerin denetime yüklenip yüklenmediğini veya denetimden kaydedilip kaydedilmediğini gösterir.

Açıklamalar

CPropExchange temel sınıfına sahip değildir.

Bir özellik değişiminin bağlamını ve yönünü oluşturur.

Kalıcılık, denetimin durum bilgilerinin, genellikle özellikleriyle temsil edilen, denetimin kendisi ile orta arasındaki değişimidir.

Çerçeve, OLE denetiminin özelliklerinin kalıcı depolamadan CPropExchange yüklendiği veya depolandığı bildirildiğinde türetilen bir nesne oluşturur.

Çerçeve, denetiminizin DoPropExchange işlevine bu CPropExchange nesneye bir işaretçi geçirir. Denetiminiz için başlangıç dosyalarını oluşturmak üzere bir sihirbaz kullandıysanız, denetiminizin DoPropExchange işlevi öğesini çağırır COleControl::DoPropExchange. Temel sınıf sürüm, denetimin hisse senedi özelliklerini değiştirir; türetilmiş sınıfınızın sürümünü, denetiminize eklediğiniz özellikleri değiştirmek için değiştirirsiniz.

CPropExchange bir denetimin özelliklerini seri hale getirmek veya denetimin yük veya oluşturma işlemi sırasında denetimin özelliklerini başlatmak için kullanılabilir. ExchangeProp ve ExchangeFontProp üye işlevleriCPropExchange, özelliklerini farklı medyalarda depolayıp yükleyebilir.

kullanma CPropExchangehakkında daha fazla bilgi için MFC ActiveX Denetimleri: Özellik Sayfaları makalesine bakın.

Devralma Hiyerarşisi

CPropExchange

Gereksinimler

Üst bilgi: afxctl.h

CPropExchange::ExchangeBlobProp

İkili büyük nesne (BLOB) verilerini depolayan bir özelliği seri hale getirir.

virtual BOOL ExchangeBlobProp(
    LPCTSTR pszPropName,
    HGLOBAL* phBlob,
    HGLOBAL hBlobDefault = NULL) = 0;

Parametreler

pszPropName
Değiş tokuş edilen özelliğin adı.

phBlob
Özelliğin depolandığı yere işaret eden bir değişken işaretçisi (değişken genellikle sınıfınızın bir üyesidir).

hBlobDefault
Özelliği için varsayılan değer.

İade Değeri

Değişim başarılı olursa sıfır olmayan; Başarısız olursa 0.

Açıklamalar

Özelliğin değeri, phBlob tarafından başvuruda bulunan değişkenden okunur veya bu değişkene yazılır. hBlobDefault belirtilirse özelliğin varsayılan değeri olarak kullanılır. Herhangi bir nedenle denetimin serileştirmesi başarısız olursa bu değer kullanılır.

, CResetPropExchange::ExchangeBlobPropve CPropsetPropExchange::ExchangeBlobProp işlevleri CArchivePropExchange::ExchangeBlobPropbu saf sanal işlevi geçersiz kılar.

CPropExchange::ExchangeFontProp

Depolama ortamı ile denetim arasında yazı tipi özelliğini değiştirir.

virtual BOOL ExchangeFontProp(
    LPCTSTR pszPropName,
    CFontHolder& font,
    const FONTDESC* pFontDesc,
    LPFONTDISP pFontDispAmbient) = 0;

Parametreler

pszPropName
Değiş tokuş edilen özelliğin adı.

Yazı tipi
Font özelliğini içeren bir CFontHolder nesnesine başvuru.

pFontDesc
pFontDispAmbient NULL olduğunda yazı tipi özelliğinin varsayılan durumunu başlatmaya yönelik değerleri içeren FONTDESC yapısına yönelik bir işaretçi.

pFontDispAmbient
Yazı tipi özelliğinin IFontDisp varsayılan durumunu başlatmak için kullanılacak bir yazı tipi arabirimi işaretçisi.

İade Değeri

Değişim başarılı olursa sıfır olmayan; Başarısız olursa 0.

Açıklamalar

Yazı tipi özelliği ortamdan denetime yükleniyorsa, yazı tipinin özellikleri ortamdan alınır ve yazı tipi tarafından başvuruda bulunan CFontHolder nesne onlarla başlatılır. Yazı tipi özelliği depolanıyorsa, yazı tipi nesnesindeki özellikler ortama yazılır.

, CResetPropExchange::ExchangeFontPropve CPropsetPropExchange::ExchangeFontProp işlevleri CArchivePropExchange::ExchangeFontPropbu saf sanal işlevi geçersiz kılar.

CPropExchange::ExchangePersistentProp

Denetim ve dosya arasında bir özellik değiştirir.

virtual BOOL ExchangePersistentProp(
    LPCTSTR pszPropName,
    LPUNKNOWN* ppUnk,
    REFIID iid,
    LPUNKNOWN pUnkDefault) = 0;

Parametreler

pszPropName
Değiş tokuş edilen özelliğin adı.

ppUnk
Özelliğin arabirimine yönelik bir işaretçi içeren değişken işaretçisi IUnknown (bu değişken genellikle sınıfınızın bir üyesidir).

ııd
Denetimin kullanacağı özellik üzerindeki arabirimin arabirim kimliği.

pUnkDefault
Özelliği için varsayılan değer.

İade Değeri

Değişim başarılı olursa sıfır olmayan; Başarısız olursa 0.

Açıklamalar

Özellik dosyadan denetime yükleniyorsa, özellik oluşturulur ve dosyadan başlatılır. Özellik depolanıyorsa, değeri dosyaya yazılır.

, CResetPropExchange::ExchangePersistentPropve CPropsetPropExchange::ExchangePersistentProp işlevleri CArchivePropExchange::ExchangePersistentPropbu saf sanal işlevi geçersiz kılar.

CPropExchange::ExchangeProp

Depolama ortamı ile denetim arasında bir özelliği değiştirir.

virtual BOOL ExchangeProp(
    LPCTSTR pszPropName,
    VARTYPE vtProp,
    void* pvProp,
    const void* pvDefault = NULL) = 0 ;

Parametreler

pszPropName
Değiş tokuş edilen özelliğin adı.

vtProp
Değiştirilmekte olan özelliğin türünü belirten bir simge. Olası değerler şunlardır:

Simge Özellik Türü
VT_I2 short
VT_I4 long
VT_BOOL BOOL
VT_BSTR CString
VT_CY CY
VT_R4 float
VT_R8 double

pvProp
Özelliğin değerinin işaretçisi.

pvDefault
Özelliği için varsayılan bir değere işaretçi.

İade Değeri

Değişim başarılı olursa sıfır olmayan; Başarısız olursa 0.

Açıklamalar

Özellik ortamdan denetime yükleniyorsa, özelliğin değeri ortamdan alınır ve pvProp tarafından işaret edilen nesnede depolanır. Özellik orta değere depolanıyorsa, pvProp tarafından işaret edilen nesnenin değeri orta değere yazılır.

, CResetPropExchange::ExchangePropve CPropsetPropExchange::ExchangeProp işlevleri CArchivePropExchange::ExchangePropbu saf sanal işlevi geçersiz kılar.

CPropExchange::ExchangeVersion

Sürüm numarasının kalıcılığını işlemek için çerçeve tarafından çağrılır.

virtual BOOL ExchangeVersion(
    DWORD& dwVersionLoaded,
    DWORD dwVersionDefault,
    BOOL bConvert);

Parametreler

dwVersionLoaded
Yüklenen kalıcı verilerin sürüm numarasının depolanacağı bir değişkene başvuru.

dwVersionDefault
Denetimin geçerli sürüm numarası.

bConvert
Kalıcı verilerin geçerli sürüme dönüştürülüp dönüştürülmeyeceğini veya yüklenen aynı sürümde tutulup tutulmayacağını gösterir.

İade Değeri

İşlev başarılı olursa sıfır olmayan; 0 aksi takdirde.

CPropExchange::GetVersion

Denetimin sürüm numarasını almak için bu işlevi çağırın.

DWORD GetVersion();

İade Değeri

Denetimin sürüm numarası.

CPropExchange::IsAsynchronous

Özellik değişimlerinin zaman uyumsuz olarak yapılıp yapılmadığını belirler.

BOOL IsAsynchronous();

İade Değeri

Özellikler zaman uyumsuz olarak değiştirilirse TRUE, aksi takdirde YANLIŞ döndürür.

CPropExchange::IsLoading

Özelliklerin denetime yüklenip yüklenmediğini veya denetimden kaydedilip kaydedilmediğini belirlemek için bu işlevi çağırın.

BOOL IsLoading();

İade Değeri

Özellikler yükleniyorsa sıfır olmayan; aksi takdirde 0.

Ayrıca bkz.

Hiyerarşi Grafiği
COleControl::D oPropExchange