Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Poznámka:
Knihovna MFC (Microsoft Foundation Classes) se nadále podporuje. Už ale nepřidáme funkce ani aktualizujeme dokumentaci.
Pokud chcete v aplikaci použít seznam vlastností, proveďte následující kroky:
Vytvořte šablonu prostředku dialogového okna pro každou stránku vlastností. Mějte na paměti, že uživatel může přepnout z jedné stránky na jinou, takže každou stránku rozložte co nej konzistentněji.
Šablony dialogů pro všechny stránky nemusí mít stejnou velikost. Rámec používá velikost největší stránky k určení, kolik místa se má přidělit pro stránky vlastností v panelu vlastností.
Při vytváření prostředku šablony dialogového okna pro stránku vlastností musíte v seznamu vlastností dialogového okna zadat následující styly:
Nastavte textové pole Titulek na stránce Obecné textem, který chcete zobrazit v záložce této stránky.
Nastavte seznam Styl na stránce Styly na Child.
Nastavte seznam Ohraničení na stránce Styly na tenký.
Ujistěte se, že je na stránce Styly zaškrtnuté políčko Titulek.
Ujistěte se, že je zaškrtnuté políčko Zakázáno na stránce Další styly .
Vytvořte třídu odvozenou z CPropertyPage, která odpovídá šabloně dialogového okna pro každou stránku vlastností. Viz Přidání třídy. Zvolte
CPropertyPagejako základní třídu.Vytvořte členské proměnné pro uchování hodnot na této stránce pro vlastnosti. Proces přidání členských proměnných na stránku vlastností je úplně stejný jako přidání členských proměnných do dialogového okna, protože stránka vlastností je specializované dialogové okno. Další informace naleznete v tématu Definování členských proměnných pro ovládací prvky dialogového okna.
Vytvořte objekt CPropertySheet ve zdrojovém kódu. Obvykle vytvoříte
CPropertySheetobjekt v obslužné rutině pro příkaz, který zobrazí seznam vlastností. Tento objekt představuje celý seznam vlastností. Pokud vytvoříte modální seznam vlastností s funkcí DoModal , architektura ve výchozím nastavení poskytuje tři příkazová tlačítka: OK, Cancel a Apply. Architektura nevytvoří žádná příkazová tlačítka pro bezmodální seznamy vlastností vytvořené pomocí funkce Create . Nemusíte odvozovat třídu zCPropertySheet, pokud nechcete přidat další ovládací prvky (například okno náhledu) nebo zobrazit bezzmodový list vlastností. Tento krok je nezbytný pro bezzámkové stránky vlastností, protože neobsahují žádné standardní ovládací prvky, které by se daly použít k jejich zavření.Pro každou stránku, která se má přidat do seznamu vlastností, postupujte takto:
Vytvořte jeden objekt pro každou
CPropertyPage-odvozenou třídu, kterou jste vytvořili dříve v tomto procesu.Zavolejte CPropertySheet::AddPage pro každou stránku.
Obvykle objekt, který vytvoří
CPropertySheet, také vytvoříCPropertyPageobjekty v tomto kroku. Pokud však implementujete třídu odvozenou zCPropertySheet, můžeteCPropertyPageobjekty vložit do objektuCPropertySheeta volatAddPagepro každou stránku z konstruktoru třídy odvozené zCPropertySheet.AddPageCPropertyPagepřidá objekt do seznamu stránek seznamu vlastností, ale ve skutečnosti nevytvoří okno pro danou stránku. Proto není nutné čekat na vytvoření okna panelu vlastností, abyste volaliAddPage; můžete volatAddPagez konstruktoru panelu vlastností.Pokud má seznam vlastností ve výchozím nastavení více oušek, než se vejde do jednoho řádku seznamu vlastností, budou se ouška naskládat do více řádků. Chcete-li zakázat stacking, zavolejte CPropertySheet::EnableStackedTabs s parametrem nastaveným na FALSE. Při vytváření seznamu vlastností je nutné volat
EnableStackedTabs.Volat CPropertySheet::DoModal nebo Vytvořte pro zobrazení dialogového okna vlastností. Volání
DoModalpro vytvoření seznamu vlastností jako modálního dialogového okna Volání vytvořit seznam vlastností jako bezmodální dialogové okno.Výměna dat mezi stránkami vlastností a vlastníkem seznamu vlastností To je vysvětleno v článku Výměna dat.
Příklad použití vlastností dokumentu najdete v obecné ukázce knihovny MFC PROPDLG.