Özellik Sayfaları (MFC)
Özellik sayfaları, iletişim kutusu veri değişimini (DDX) temel alan bir veri eşleme mekanizmasını destekleyerek görüntülemek ve düzenlemek için özelleştirilebilir, grafik bir arabirimde belirli OLE denetimi özelliklerinin geçerli değerlerini görüntüler.
Bu veri eşleme mekanizması özellik sayfası denetimlerini OLE denetiminin tek tek özellikleriyle eşler. Denetim özelliğinin değeri, özellik sayfası denetiminin durumunu veya içeriğini yansıtır. Özellik sayfası denetimleri ve özellikleri arasındaki eşleme, özellik sayfasının DoDataExchange
üye işlevindeki DDP_ işlev çağrıları tarafından belirtilir. Aşağıda, denetiminizin özellik sayfası kullanılarak girilen veri alışverişinde bulunan DDP_ işlevlerin listesi yer alır:
Özellik Sayfası Veri Aktarımı
Veri Akışı Adı | Açıklama |
---|---|
DDP_CBIndex | Seçili dizenin dizinini bir birleşik giriş kutusuna bir denetimin özelliğiyle bağlar. |
DDP_CBString | Seçili dizeyi birleşik giriş kutusuna bir denetimin özelliğiyle bağlar. Seçili dize, özelliğin değeriyle aynı harflerle başlayabilir, ancak tam olarak eşleşmesi gerekmez. |
DDP_CBStringExact | Seçili dizeyi birleşik giriş kutusuna bir denetimin özelliğiyle bağlar. Seçili dize ve özelliğin dize değeri tam olarak eşleşmelidir. |
DDP_Check | Denetimin özellik sayfasındaki bir onay kutusunu denetimin özelliğine bağlar. |
DDP_LBIndex | Seçili dizenin dizinini bir liste kutusuna bir denetimin özelliğiyle bağlar. |
DDP_LBString | Liste kutusundaki seçili dizeyi denetimin özelliğine bağlar. Seçili dize, özelliğin değeriyle aynı harflerle başlayabilir ancak tam olarak eşleşmesi gerekmez. |
DDP_LBStringExact | Liste kutusundaki seçili dizeyi denetimin özelliğine bağlar. Seçili dize ve özelliğin dize değeri tam olarak eşleşmelidir. |
DDP_PostProcessing | Denetiminizden özellik değerlerinin aktarımını tamamlar. |
DDP_Radio | Denetimin özellik sayfasındaki bir radyo düğmesi grubunu denetimin özelliğiyle bağlar. |
DDP_Text | Denetimin özellik sayfasındaki bir denetimi bir denetimin özelliğine bağlar. Bu işlev, , short , BSTR ve long gibi double birkaç farklı özellik türünü işler. |
İşlev ve özellik sayfaları hakkında DoDataExchange
daha fazla bilgi için ActiveX Denetimleri: Özellik Sayfaları makalesine bakın.
Aşağıda, OLE denetimi için özellik sayfaları oluşturmak ve yönetmek için kullanılan makroların listesi yer alır:
Özellik Sayfaları
Veri Akışı Adı | Açıklama |
---|---|
BEGIN_PROPPAGEIDS | Özellik sayfası kimlikleri listesini başlatır. |
END_PROPPAGEIDS | Özellik sayfası kimlikleri listesini sonlandırır. |
PROPPAGEID | Denetim sınıfının özellik sayfasını bildirir. |
DDP_CBIndex
Bir tamsayı özelliğinin değerini özellik sayfasındaki DoDataExchange
birleşik giriş kutusundaki geçerli seçimin diziniyle eşitlemek için özellik sayfanızın işlevinde bu işlevi çağırın.
void AFXAPI DDP_CBIndex(
CDataExchange* pDX,
int id,
int& member,
LPCTSTR pszPropName);
Parametreler
pDX
Nesne CDataExchange
işaretçisi. Çerçeve, bu nesneyi yönü de dahil olmak üzere veri alışverişinin bağlamını oluşturmak için sağlar.
id
pszPropName tarafından belirtilen denetim özelliğiyle ilişkili birleşik giriş kutusu denetiminin kaynak kimliği.
üye
kimlik ve pszPropName tarafından belirtilen özellik tarafından belirtilen özellik sayfası denetimiyle ilişkilendirilmiş üye değişkeni.
pszPropName
Kimlik tarafından belirtilen birleşik giriş kutusu denetimiyle değiştirilecek denetim özelliğinin özellik adı.
Açıklamalar
Bu işlev, karşılık gelen DDX_CBIndex
işlev çağrısından önce çağrılmalıdır.
Gereksinimler
Üst bilgi afxctl.h
DDP_CBString
Bir dize özelliğinin değerini özellik sayfasındaki birleşik giriş kutusundaki geçerli seçimle eşitlemek için özellik sayfanızın DoDataExchange
işlevinde bu işlevi çağırın.
void AFXAPI DDP_CBString(
CDataExchange* pDX,
int id,
CString& member,
LPCTSTR pszPropName);
Parametreler
pDX
Nesne CDataExchange
işaretçisi. Çerçeve, bu nesneyi yönü de dahil olmak üzere veri alışverişinin bağlamını oluşturmak için sağlar.
id
pszPropName tarafından belirtilen denetim özelliğiyle ilişkili birleşik giriş kutusu denetiminin kaynak kimliği.
üye
kimlik ve pszPropName tarafından belirtilen özellik tarafından belirtilen özellik sayfası denetimiyle ilişkilendirilmiş üye değişkeni.
pszPropName
Kimlik tarafından belirtilen birleşik giriş kutusu dizesiyle değiştirilecek denetim özelliğinin özellik adı.
Açıklamalar
Bu işlev, karşılık gelen DDX_CBString
işlev çağrısından önce çağrılmalıdır.
Gereksinimler
Üst bilgi afxctl.h
DDP_CBStringExact
Özellik sayfasındaki birleşik giriş kutusundaki DoDataExchange
geçerli seçimle tam olarak eşleşen bir dize özelliğinin değerini eşitlemek için özellik sayfanızın işlevinde bu işlevi çağırın.
void AFXAPI DDP_CBStringExact(
CDataExchange* pDX,
int id,
CString& member,
LPCTSTR pszPropName);
Parametreler
pDX
Nesne CDataExchange
işaretçisi. Çerçeve, bu nesneyi yönü de dahil olmak üzere veri alışverişinin bağlamını oluşturmak için sağlar.
id
pszPropName tarafından belirtilen denetim özelliğiyle ilişkili birleşik giriş kutusu denetiminin kaynak kimliği.
üye
kimlik ve pszPropName tarafından belirtilen özellik tarafından belirtilen özellik sayfası denetimiyle ilişkilendirilmiş üye değişkeni.
pszPropName
Kimlik tarafından belirtilen birleşik giriş kutusu dizesiyle değiştirilecek denetim özelliğinin özellik adı.
Açıklamalar
Bu işlev, karşılık gelen DDX_CBStringExact
işlev çağrısından önce çağrılmalıdır.
Gereksinimler
Üst bilgi afxctl.h
DDP_Check
Özelliğin değerini ilişkili özellik sayfası DoDataExchange
onay kutusu denetimiyle eşitlemek için özellik sayfanızın işlevinde bu işlevi çağırın.
void AFXAPI DDP_Check(
CDataExchange* pDX,
int id,
int & member,
LPCSTR pszPropName);
Parametreler
pDX
Nesne CDataExchange
işaretçisi. Çerçeve, bu nesneyi yönü de dahil olmak üzere veri alışverişinin bağlamını oluşturmak için sağlar.
id
pszPropName tarafından belirtilen denetim özelliğiyle ilişkili onay kutusu denetiminin kaynak kimliği.
üye
kimlik ve pszPropName tarafından belirtilen özellik tarafından belirtilen özellik sayfası denetimiyle ilişkilendirilmiş üye değişkeni.
pszPropName
Kimlik tarafından belirtilen onay kutusu denetimiyle değiştirilecek denetim özelliğinin özellik adı.
Açıklamalar
Bu işlev, karşılık gelen DDX_Check
işlev çağrısından önce çağrılmalıdır.
Gereksinimler
Üst bilgi afxctl.h
DDP_LBIndex
Bir tamsayı özelliğinin değerini özellik sayfasındaki DoDataExchange
liste kutusundaki geçerli seçimin diziniyle eşitlemek için özellik sayfanızın işlevinde bu işlevi çağırın.
void AFXAPI DDP_LBIndex(
CDataExchange* pDX,
int id,
int& member,
LPCTSTR pszPropName);
Parametreler
pDX
Nesne CDataExchange
işaretçisi. Çerçeve, bu nesneyi yönü de dahil olmak üzere veri alışverişinin bağlamını oluşturmak için sağlar.
id
pszPropName tarafından belirtilen denetim özelliğiyle ilişkili liste kutusu denetiminin kaynak kimliği.
üye
kimlik ve pszPropName tarafından belirtilen özellik tarafından belirtilen özellik sayfası denetimiyle ilişkilendirilmiş üye değişkeni.
pszPropName
Kimlik tarafından belirtilen liste kutusu dizesiyle değiştirilecek denetim özelliğinin özellik adı.
Açıklamalar
Bu işlev, karşılık gelen DDX_LBIndex
işlev çağrısından önce çağrılmalıdır.
Gereksinimler
Üst bilgi afxctl.h
DDP_LBString
Bir dize özelliğinin değerini özellik sayfasındaki liste kutusundaki geçerli seçimle eşitlemek için özellik sayfanızın DoDataExchange
işlevinde bu işlevi çağırın.
void AFXAPI DDP_LBString(
CDataExchange* pDX,
int id,
CString& member,
LPCTSTR pszPropName);
Parametreler
pDX
Nesne CDataExchange
işaretçisi. Çerçeve, bu nesneyi yönü de dahil olmak üzere veri alışverişinin bağlamını oluşturmak için sağlar.
id
pszPropName tarafından belirtilen denetim özelliğiyle ilişkili liste kutusu denetiminin kaynak kimliği.
üye
kimlik ve pszPropName tarafından belirtilen özellik tarafından belirtilen özellik sayfası denetimiyle ilişkilendirilmiş üye değişkeni.
pszPropName
Kimlik tarafından belirtilen liste kutusu dizesiyle değiştirilecek denetim özelliğinin özellik adı.
Açıklamalar
Bu işlev, karşılık gelen DDX_LBString
işlev çağrısından önce çağrılmalıdır.
Gereksinimler
Üst bilgi afxctl.h
DDP_LBStringExact
Özellik sayfasındaki DoDataExchange
liste kutusunda geçerli seçimle tam olarak eşleşen bir dize özelliğinin değerini eşitlemek için özellik sayfanızın işlevinde bu işlevi çağırın.
void AFXAPI DDP_LBStringExact(
CDataExchange* pDX,
int id,
CString& member,
LPCTSTR pszPropName);
Parametreler
pDX
Nesne CDataExchange
işaretçisi. Çerçeve, bu nesneyi yönü de dahil olmak üzere veri alışverişinin bağlamını oluşturmak için sağlar.
id
pszPropName tarafından belirtilen denetim özelliğiyle ilişkili liste kutusu denetiminin kaynak kimliği.
üye
kimlik ve pszPropName tarafından belirtilen özellik tarafından belirtilen özellik sayfası denetimiyle ilişkilendirilmiş üye değişkeni.
pszPropName
Kimlik tarafından belirtilen liste kutusu dizesiyle değiştirilecek denetim özelliğinin özellik adı.
Açıklamalar
Bu işlev, karşılık gelen DDX_LBStringExact
işlev çağrısından önce çağrılmalıdır.
Gereksinimler
Üst bilgi afxctl.h
DDP_PostProcessing
Özellik değerlerinin özellik sayfasından, özellik değerleri kaydedilirken denetiminize aktarılmasını tamamlamak için özellik sayfanızın DoDataExchange
işlevinde bu işlevi çağırın.
void AFXAPI DDP_PostProcessing(CDataExchange * pDX);
Parametreler
pDX
Nesne CDataExchange
işaretçisi. Çerçeve, bu nesneyi yönü de dahil olmak üzere veri alışverişinin bağlamını oluşturmak için sağlar.
Açıklamalar
Tüm veri değişimi işlevleri tamamlandıktan sonra bu işlev çağrılmalıdır. Örneğin:
void CMyAxPropPage::DoDataExchange(CDataExchange *pDX)
{
DDP_Text(pDX, IDC_POSITIONEDIT, m_NeedlePosition, _T("NeedlePosition"));
DDX_Text(pDX, IDC_POSITIONEDIT, m_NeedlePosition);
DDV_MinMaxInt(pDX, m_NeedlePosition, 0, 3);
DDP_PostProcessing(pDX);
}
Gereksinimler
Üst bilgi afxctl.h
DDP_Radio
Özelliğin değerini ilişkili özellik sayfası radyo düğmesi denetimiyle eşitlemek için denetiminizin DoPropExchange
işlevinde bu işlevi çağırın.
void AFXAPI DDP_Radio(
CDataExchange* pDX,
int id,
int & member,
LPCTSTR pszPropName);
Parametreler
pDX
Nesne CDataExchange
işaretçisi. Çerçeve, bu nesneyi yönü de dahil olmak üzere veri alışverişinin bağlamını oluşturmak için sağlar.
id
pszPropName tarafından belirtilen denetim özelliğiyle ilişkili radyo düğmesi denetiminin kaynak kimliği.
üye
kimlik ve pszPropName tarafından belirtilen özellik tarafından belirtilen özellik sayfası denetimiyle ilişkilendirilmiş üye değişkeni.
pszPropName
Kimlik tarafından belirtilen radyo düğmesi denetimiyle değiştirilecek denetim özelliğinin özellik adı.
Açıklamalar
Bu işlev, karşılık gelen DDX_Radio
işlev çağrısından önce çağrılmalıdır.
Gereksinimler
Üst bilgi afxctl.h
DDP_Text
Özelliğin değerini ilişkili özellik sayfası denetimiyle eşitlemek için denetiminizin DoDataExchange
işlevinde bu işlevi çağırın.
void AFXAPI DDP_Text(
CDataExchange* pDX,
int id,
BYTE & member,
LPCTSTR pszPropName);
void AFXAPI DDP_Text(
CDataExchange* pDX,
int id,
int & member,
LPCTSTR pszPropName);
void AFXAPI DDP_Text(
CDataExchange* pDX,
int id,
UINT & member,
LPCTSTR pszPropName);
void AFXAPI DDP_Text(
CDataExchange* pDX,
int id,
long & member,
LPCTSTR pszPropName);
void AFXAPI DDP_Text(
CDataExchange* pDX,
int id,
DWORD & member,
LPCTSTR pszPropName);
void AFXAPI DDP_Text(
CDataExchange* pDX,
int id,
float & member,
LPCTSTR pszPropName);
void AFXAPI DDP_Text(
CDataExchange* pDX,
int id,
double & member,
LPCTSTR pszPropName);
void AFXAPI DDP_Text(
CDataExchange* pDX,
int id,
CString & member,
LPCTSTR pszPropName);
Parametreler
pDX
Nesne CDataExchange
işaretçisi. Çerçeve, bu nesneyi yönü de dahil olmak üzere veri alışverişinin bağlamını oluşturmak için sağlar.
id
pszPropName tarafından belirtilen denetim özelliğiyle ilişkili denetimin kaynak kimliği.
üye
kimlik ve pszPropName tarafından belirtilen özellik tarafından belirtilen özellik sayfası denetimiyle ilişkilendirilmiş üye değişkeni.
pszPropName
Kimlik tarafından belirtilen denetimle değiştirilecek denetim özelliğinin özellik adı.
Açıklamalar
Bu işlev, karşılık gelen DDX_Text
işlev çağrısından önce çağrılmalıdır.
Gereksinimler
Üst bilgi afxctl.h
BEGIN_PROPPAGEIDS
Denetiminizin özellik sayfası kimlikleri listesinin tanımını başlatır.
BEGIN_PROPPAGEIDS(class_name, count)
Parametreler
class_name
Özellik sayfalarının belirtildiği denetim sınıfının adı.
count
Denetim sınıfı tarafından kullanılan özellik sayfalarının sayısı.
Açıklamalar
Sınıfınızın üye işlevlerini tanımlayan uygulama (.cpp) dosyasında, özellik sayfası listesini BEGIN_PROPPAGEIDS makroyla başlatın, ardından özellik sayfalarınızın her biri için makro girdileri ekleyin ve özellik sayfası listesini END_PROPPAGEIDS makroyla tamamlayın.
Özellik sayfaları hakkında daha fazla bilgi için ActiveX Denetimleri: Özellik Sayfaları makalesine bakın.
Gereksinimler
Üst bilgi afxctl.h
END_PROPPAGEIDS
Özellik sayfası kimliği listenizin tanımını sonlandırır.
END_PROPPAGEIDS(class_name)
Parametreler
class_name
Özellik sayfasının sahibi olan denetim sınıfının adı.
Gereksinimler
Üst bilgi afxctl.h
PROPPAGEID
OLE denetiminiz tarafından kullanılmak üzere bir özellik sayfası ekler.
PROPPAGEID(clsid)
Parametreler
clsid
Özellik sayfasının benzersiz sınıf kimliği.
Açıklamalar
Tüm PROPPAGEID makroları, denetiminizin uygulama dosyasındaki BEGIN_PROPPAGEIDS ve END_PROPPAGEIDS makroları arasına yerleştirilmelidir.
Gereksinimler
Üst bilgi afxctl.h