MFC – ovládací prvky ActiveX: Stránky vlastností
Stránky vlastností umožňují uživateli ovládacího prvku technologie ActiveX zobrazit a změnit vlastnosti ovládacího prvku technologie ActiveX. K těmto vlastnostem se přistupuje vyvoláním dialogového okna vlastností ovládacího prvku, které obsahuje jednu nebo více stránek vlastností, které poskytují přizpůsobené grafické rozhraní pro zobrazení a úpravu vlastností ovládacího prvku.
Důležité
technologie ActiveX je starší technologie, která by se neměla používat pro nový vývoj. Další informace o moderních technologiích, které nahrazují technologie ActiveX, najdete v tématu technologie ActiveX Ovládací prvky.
technologie ActiveX stránky vlastností ovládacího prvku se zobrazují dvěma způsoby:
Při vyvolání příkazu Vlastnosti ovládacího prvku (OLEIVERB_PROPERTIES) otevře ovládací prvek dialogové okno modální vlastnosti, které obsahuje stránky vlastností ovládacího prvku.
Kontejner může zobrazit vlastní bezmodální dialogové okno, které zobrazuje stránky vlastností vybraného ovládacího prvku.
Dialogové okno vlastnosti (znázorněné na následujícím obrázku) se skládá z oblasti pro zobrazení aktuální stránky vlastností, karet pro přepínání mezi stránkami vlastností a kolekce tlačítek, která provádějí běžné úlohy, jako je zavření dialogového okna stránky vlastností, zrušení provedených změn nebo okamžité použití jakýchkoli změn v ovládacím prvku technologie ActiveX.
Dialogové okno Vlastnosti
Tento článek se zabývá tématy souvisejícími s používáním stránek vlastností v ovládacím prvku technologie ActiveX. Tady jsou některé z nich:
Další informace o používání stránek vlastností v ovládacím prvku technologie ActiveX najdete v následujících článcích:
MFC – ovládací prvky ActiveX: Přidání další stránky přizpůsobených vlastností
MFC – ovládací prvky ActiveX: Použití stránek uložených vlastností
Informace o použití seznamů vlastností v jiné aplikaci MFC než ovládací prvek technologie ActiveX naleznete v tématu Seznamy vlastností.
Implementace výchozí stránky vlastností
Pokud k vytvoření projektu ovládacího prvku použijete průvodce technologie ActiveX Ovládací prvek, průvodce technologie ActiveX Ovládací prvek poskytuje výchozí třídu stránky vlastností pro ovládací prvek odvozený z COlePropertyPage Třída. Zpočátku je tato stránka vlastností prázdná, ale můžete do ní přidat libovolný ovládací prvek dialogového okna nebo sadu ovládacích prvků. Protože průvodce technologie ActiveX ovládací prvek vytvoří ve výchozím nastavení pouze jednu třídu stránky vlastností, musí být vytvořeny další třídy stránky vlastností (také odvozené) COlePropertyPage
pomocí zobrazení třídy. Další informace o tomto postupu naleznete v tématu MFC technologie ActiveX ovládací prvky: Přidání další vlastní vlastnosti stránka.
Implementace stránky vlastností (v tomto případě výchozí) je třístupňový proces:
Implementace stránky vlastností
Přidejte do řídicího projektu třídu -odvozenou
COlePropertyPage
. Pokud byl projekt vytvořen pomocí Průvodce ovládacím technologie ActiveX (jako v tomto případě), výchozí třída stránky vlastností již existuje.Pomocí editoru dialogů můžete do šablony stránky vlastností přidat všechny ovládací prvky.
DoDataExchange
Přizpůsobte funkciCOlePropertyPage
-odvozené třídy pro výměnu hodnot mezi ovládacím prvku stránky vlastností a technologie ActiveX ovládacím prvku.
Například následující postupy používají jednoduchý ovládací prvek (s názvem Ukázka). Ukázka byla vytvořena pomocí průvodce ovládacím prvek technologie ActiveX a obsahuje pouze vlastnost titulek akcií.
Přidání ovládacích prvků na stránku vlastností
Přidání ovládacích prvků na stránku vlastností
Otevřete projekt ovládacího prvku a otevřete zobrazení zdrojů.
Poklikejte na ikonu adresáře Dialogové okno .
Otevřete dialogové okno IDD_PROPPAGE_SAMPLE.
Průvodce ovládacím technologie ActiveX připojí název projektu na konec ID dialogového okna, v tomto případě Ukázka.
Přetáhněte vybraný ovládací prvek ze sady nástrojů do oblasti dialogového okna.
V tomto příkladu stačí ovládací prvek popisku textu "Titulek:" a ovládací prvek textového pole s identifikátorem IDC_CAPTION.
Kliknutím na Uložit na panelu nástrojů uložte provedené změny.
Teď, když bylo uživatelské rozhraní změněno, musíte propojit textové pole s vlastností Titulek. To se provádí v následující části úpravou CSamplePropPage::DoDataExchange
funkce.
Přizpůsobení funkce DoDataExchange
Stránka vlastností CWnd::D oDataExchange funkce umožňuje propojit hodnoty stránky vlastností se skutečnými hodnotami vlastností v ovládacím prvku. Chcete-li vytvořit propojení, musíte namapovat příslušná pole stránky vlastností na odpovídající vlastnosti ovládacího prvku.
Tato mapování se implementují pomocí funkcí stránky vlastností DDP_ . Funkce DDP_ fungují stejně jako DDX_ funkce používané ve standardních dialogových oknech MFC s jednou výjimkou. Kromě odkazu na členovou proměnnou DDP_ funkce přebírají název vlastnosti ovládacího prvku. Následuje typická položka ve DoDataExchange
funkci pro stránku vlastností.
DDP_Text(pDX, IDC_CAPTION, m_caption, _T("Caption"));
Tato funkce přidruží m_popis členské proměnné stránky vlastností pomocí funkce TitulekDDP_TEXT
.
Po vložení ovládacího prvku stránky vlastností je nutné vytvořit propojení mezi ovládacím prvku stránky vlastností, IDC_CAPTION a skutečnou vlastností ovládacího prvku, Titulek, pomocí DDP_Text
funkce, jak je popsáno výše.
Stránky vlastností jsou k dispozici pro jiné typy ovládacích prvků dialogového okna, jako jsou zaškrtávací políčka, přepínače a seznamy. Následující tabulka uvádí celou sadu vlastností DDP_ funkcí a jejich účelu:
Funkce stránky vlastností
Název funkce | Použití této funkce k propojení |
---|---|
DDP_CBIndex |
Index vybraného řetězce v poli se seznamem s vlastností ovládacího prvku. |
DDP_CBString |
Vybraný řetězec v poli se seznamem s vlastností ovládacího prvku. Vybraný řetězec může začínat stejnými písmeny jako hodnota vlastnosti, ale nemusí se shodovat úplně. |
DDP_CBStringExact |
Vybraný řetězec v poli se seznamem s vlastností ovládacího prvku. Vybraný řetězec a hodnota řetězce vlastnosti se musí přesně shodovat. |
DDP_Check |
Zaškrtávací políčko s vlastností ovládacího prvku. |
DDP_LBIndex |
Index vybraného řetězce v seznamu s vlastností ovládacího prvku. |
DDP_LBString |
Vybraný řetězec v seznamu s vlastností ovládacího prvku. Vybraný řetězec může začínat stejnými písmeny jako hodnota vlastnosti, ale nemusí se shodovat úplně. |
DDP_LBStringExact |
Vybraný řetězec v seznamu s vlastností ovládacího prvku. Vybraný řetězec a hodnota řetězce vlastnosti se musí přesně shodovat. |
DDP_Radio |
Přepínač s vlastností ovládacího prvku. |
DDP_Text |
Text s vlastností ovládacího prvku |