Vytvoření ovládacího prvku karta
Způsob vytvoření ovládacího prvku karta závisí na tom, jestli ovládací prvek používáte v dialogovém okně nebo ho vytváříte v nedialogovém okně.
Použití atributu CTabCtrl přímo v dialogovém okně
V editoru dialogů přidejte ovládací prvek Tab do prostředku šablony dialogového okna. Zadejte JEHO ID ovládacího prvku.
Pomocí Průvodce přidáním členské proměnné přidejte členovou proměnnou typu CTabCtrl s control vlastnost. Tento člen můžete použít k volání
CTabCtrl
členských funkcí.Funkce obslužné rutiny mapování ve třídě dialogového okna pro všechny zprávy oznámení ovládacích prvků karet, které potřebujete zpracovat. Další informace naleznete v tématu Mapování zpráv na funkce.
V OnInitDialog, nastavte styly pro
CTabCtrl
.
Použití atributu CTabCtrl v nedialogovém okně
Definujte ovládací prvek v zobrazení nebo třídě okna.
Volejte funkci Create člena ovládacího prvku, pravděpodobně v OnInitialUpdate, pravděpodobně dříve, než nadřazené okno je funkce obslužné rutiny OnCreate (pokud jste podtřídy ovládacího prvku). Nastavte styly ovládacího prvku.
Po vytvoření objektu CTabCtrl
můžete nastavit nebo vymazat následující rozšířené styly:
TCS_EX_FLATSEPARATORS Ovládací prvek karta bude kreslit oddělovače mezi položkami tabulátoru. Tento rozšířený styl má vliv jenom na ovládací prvky karet, které mají styly TCS_BUTTONS a TCS_FLATBUTTONS . Ve výchozím nastavení nastaví vytvoření ovládacího prvku tab pomocí stylu TCS_FLATBUTTONS tento rozšířený styl.
TCS_EX_REGISTERDROP Ovládací prvek karta generuje TCN_GETOBJECT zprávy s oznámením o vyžádání cílového objektu při přetažení objektu přes položky karty v ovládacím prvku.
Poznámka
Chcete-li obdržet oznámení TCN_GETOBJECT , je nutné inicializovat knihovny OLE voláníM AfxOleInit.
Tyto styly lze načíst a nastavit po vytvoření ovládacího prvku s příslušnými voláními GetExtendedStyle a SetExtendedStyle členské funkce.
Například nastavte styl TCS_EX_FLATSEPARATORS následujícím řádkem kódu:
DWORD dwExStyle = m_TabCtrl.GetExtendedStyle();
m_TabCtrl.SetExtendedStyle(dwExStyle | TCS_EX_FLATSEPARATORS);
Vymažte styl TCS_EX_FLATSEPARATORS z objektu CTabCtrl
pomocí následujících řádků kódu:
DWORD dwExStyle = m_TabCtrl.GetExtendedStyle();
m_TabCtrl.SetExtendedStyle(dwExStyle & ~TCS_EX_FLATSEPARATORS);
Tím odeberete oddělovače, které se zobrazí mezi tlačítky objektu CTabCtrl
.