Sdílet prostřednictvím


CMFCHeaderCtrl – třída

Třída CMFCHeaderCtrl podporuje řazení více sloupců v ovládacím prvku záhlaví.

Syntaxe

class CMFCHeaderCtrl : public CHeaderCtrl

Členové

Veřejné konstruktory

Jméno popis
CMFCHeaderCtrl::CMFCHeaderCtrl CMFCHeaderCtrl Vytvoří objekt.
CMFCHeaderCtrl::~CMFCHeaderCtrl Destruktor.

Veřejné metody

Jméno popis
CMFCHeaderCtrl::EnableMultipleSort Povolí nebo zakáže režim řazení více sloupců pro aktuální ovládací prvek záhlaví.
CMFCHeaderCtrl::GetColumnState Určuje, jestli sloupec není seřazený, nebo je seřazený vzestupně nebo sestupně.
CMFCHeaderCtrl::GetSortColumn Načte index založený na nule prvního seřazeného sloupce v ovládacím prvku záhlaví.
CMFCHeaderCtrl::GetThisClass Používá se architekturou k získání ukazatele na CRuntimeClass objektu, který je přidružen k tomuto typu třídy.
CMFCHeaderCtrl::IsAscending Určuje, jestli je libovolný sloupec v ovládacím prvku záhlaví seřazený vzestupně.
CMFCHeaderCtrl::IsDialogControl Určuje, zda nadřazené okno aktuálního ovládacího prvku záhlaví je dialogové okno.
CMFCHeaderCtrl::IsMultipleSort Určuje, jestli je aktuální ovládací prvek záhlaví v režimu řazení více sloupců.
CMFCHeaderCtrl::RemoveSortColumn Odebere zadaný sloupec ze seznamu sloupců řazení.
CMFCHeaderCtrl::SetSortColumn Nastaví pořadí řazení zadaného sloupce v ovládacím prvku záhlaví.

Chráněné metody

Jméno popis
CMFCHeaderCtrl::OnDrawItem Volá se rozhraním pro vykreslení sloupce ovládacího prvku záhlaví.
CMFCHeaderCtrl::OnDrawSortArrow Volá se podle architektury pro vykreslení šipky řazení.
CMFCHeaderCtrl::OnFillBackground Volá se rozhraním pro vyplnění pozadí sloupce ovládacího prvku záhlaví.

Příklad

Následující příklad ukazuje, jak vytvořit objekt CMFCHeaderCtrl třídy a jak povolit režim řazení více sloupců pro aktuální ovládací prvek záhlaví.

CMFCHeaderCtrl *headerCtrl = new CMFCHeaderCtrl();
headerCtrl->EnableMultipleSort();

Poznámky

Třída CMFCHeaderCtrl nakreslí šipku řazení na sloupec ovládacího prvku záhlaví, která označuje, že je sloupec seřazený. Režim řazení více sloupců použijte, pokud lze současně seřadit sadu sloupců v ovládacím prvku nadřazeného seznamu (CMFCListCtrl Třída).

Hierarchie dědičnosti

Objekt CObject

CCmdTarget

Cwnd

CHeaderCtrl

CMFCHeaderCtrl

Požadavky

Záhlaví: afxheaderctrl.h

CMFCHeaderCtrl::CMFCHeaderCtrl

CMFCHeaderCtrl Vytvoří objekt.

CMFCHeaderCtrl::CMFCHeaderCtrl()

Poznámky

Tento konstruktor inicializuje následující členské proměnné na zadané hodnoty:

Proměnná člena Hodnota
m_bIsMousePressed FALSE
m_bMultipleSort FALSE
m_bAscending TRUE
m_nHighlightedItem -1
m_bTracked FALSE
m_bIsDlgControl FALSE
m_hFont NULL

CMFCHeaderCtrl::EnableMultipleSort

Povolí nebo zakáže režim řazení více sloupců pro aktuální ovládací prvek záhlaví.

void EnableMultipleSort(BOOL bEnable=TRUE);

Parametry

bEnable
[v] TRUE pro povolení režimu řazení více sloupců; NEPRAVDA, pokud chcete zakázat režim řazení více sloupců a odebrat všechny sloupce ze seznamu seřazených sloupců. Výchozí hodnota je PRAVDA.

Poznámky

Pomocí této metody můžete povolit nebo zakázat režim řazení více sloupců. Dva nebo více sloupců se můžou účastnit řazení, pokud je ovládací prvek záhlaví v režimu řazení více sloupců.

CMFCHeaderCtrl::GetColumnState

Určuje, jestli je sloupec neseřazený nebo seřazený vzestupně nebo sestupně.

int GetColumnState(int iColumn) const;

Parametry

iColumn
[v] Index sloupce založený na nule.

Vrácená hodnota

Hodnota, která označuje stav řazení zadaného sloupce. V následující tabulce jsou uvedené možné hodnoty:

Hodnota popis
-1 Seřazeno sestupně.
0 Není seřazeno.
1 Seřadí se vzestupně.

Poznámky

CMFCHeaderCtrl::GetSortColumn

Načte index založený na nule prvního seřazeného sloupce v ovládacím prvku záhlaví.

int GetSortColumn() const;

Vrácená hodnota

Index seřazeného sloupce nebo -1, pokud se nenajde žádný seřazený sloupec.

Poznámky

Pokud je ovládací prvek hlavičky v režimu řazení více sloupců a zkompilovali jste aplikaci v režimu ladění, tato metoda tvrdí a radí, abyste místo toho použili CMFCHeaderCtrl::GetColumnState metoda. Pokud je ovládací prvek záhlaví v režimu řazení více sloupců a zkompilovali jste aplikaci v maloobchodním režimu, vrátí tato metoda hodnotu -1.

CMFCHeaderCtrl::IsAscending

Určuje, jestli je libovolný sloupec v ovládacím prvku záhlaví seřazený vzestupně.

BOOL IsAscending() const;

Vrácená hodnota

TRUE, pokud je některý sloupec v ovládacím prvku záhlaví seřazen vzestupně; jinak NEPRAVDA.

Poznámky

Hodnota, kterou tato metoda vrátí, se používá k zobrazení odpovídající šipky řazení u položky ovládacího prvku záhlaví. K nastavení pořadí řazení použijte cmFCHeaderCtrl::SetSortColumn metoda.

CMFCHeaderCtrl::IsDialogControl

Určuje, zda nadřazené okno aktuálního ovládacího prvku záhlaví je dialogové okno.

BOOL IsDialogControl() const;

Vrácená hodnota

TRUE, pokud nadřazené okno aktuálního ovládacího prvku záhlaví je dialogové okno; jinak NEPRAVDA.

CMFCHeaderCtrl::IsMultipleSort

Určuje, jestli je aktuální ovládací prvek záhlaví v režimu řazení více sloupců.

BOOL IsMultipleSort() const;

Vrácená hodnota

TRUE, pokud je povolen režim řazení více sloupců; jinak NEPRAVDA.

Poznámky

K povolení nebo zakázání režimu řazení více sloupců použijte cmFCHeaderCtrl::EnableMultipleSort metoda. Dva nebo více sloupců se můžou účastnit řazení, pokud je ovládací prvek záhlaví v režimu řazení více sloupců.

CMFCHeaderCtrl::OnDrawItem

Volá se rozhraním pro vykreslení sloupce ovládacího prvku záhlaví.

virtual void OnDrawItem(
    CDC* pDC,
    int iItem,
    CRect rect,
    BOOL bIsPressed,
    BOOL bIsHighlighted);

Parametry

Pdc
[v] Ukazatel na kontext zařízení.

iItem
[v] Index položky založený na nule, který se má nakreslit.

Rect
[v] Ohraničující obdélník položky, který chcete nakreslit.

bIsPressed
[v] TRUE pro kreslení položky v lisované stavu; jinak NEPRAVDA.

bIsHighlighted
[v] TRUE pro kreslení položky ve zvýrazněném stavu; jinak NEPRAVDA.

CMFCHeaderCtrl::OnDrawSortArrow

Volá se podle architektury pro vykreslení šipky řazení.

virtual void OnDrawSortArrow(
    CDC* pDC,
    CRect rectArrow);

Parametry

Pdc
[v] Ukazatel na kontext zařízení.

rectArrow
[v] Ohraničující obdélník šipky řazení.

CMFCHeaderCtrl::OnFillBackground

Volá se rozhraním pro vyplnění pozadí sloupce ovládacího prvku záhlaví.

virtual void OnFillBackground(CDC* pDC);

Parametry

Pdc
[v] Ukazatel na kontext zařízení.

Poznámky

CMFCHeaderCtrl::RemoveSortColumn

Odebere zadaný sloupec ze seznamu sloupců řazení.

void RemoveSortColumn(int iColumn);

Parametry

iColumn
[v] Index sloupce založený na nule, který chcete odebrat.

CMFCHeaderCtrl::SetSortColumn

Nastaví pořadí řazení zadaného sloupce v ovládacím prvku záhlaví.

void SetSortColumn(
    int iColumn,
    BOOL bAscending=TRUE,
    BOOL bAdd=FALSE);

Parametry

iColumn
[v] Index ovládacího prvku záhlaví založený na nule. Pokud je tento parametr menší než nula, tato metoda odebere všechny sloupce ze seznamu sloupců řazení.

BAscending
[v] Určuje pořadí řazení sloupce, který určuje parametr iColumn . PRAVDA pro nastavení vzestupného pořadí; FALSE, pokud chcete nastavit sestupné pořadí. Výchozí hodnota je PRAVDA.

bAdd
[v] HODNOTA TRUE pro nastavení pořadí řazení sloupce, který určuje parametr iColumn .

Pokud je aktuální ovládací prvek záhlaví v režimu řazení více sloupců, tato metoda přidá zadaný sloupec do seznamu sloupců řazení. K nastavení režimu řazení více sloupců použijte CMFCHeaderCtrl::EnableMultipleSort .

Pokud není nastaven režim řazení více sloupců a tato metoda je zkompilována v režimu ladění, tato metoda tvrdí. Pokud není nastaven režim řazení více sloupců a tato metoda je zkompilována v maloobchodním režimu, tato metoda nejprve odebere všechny sloupce ze seznamu sloupců řazení a pak přidá zadaný sloupec do seznamu.

FALSE pro první odebrání všech sloupců ze seznamu sloupců řazení a následné přidání zadaného sloupce do seznamu. Výchozí hodnota je FALSE.

Poznámky

Pomocí této metody můžete nastavit pořadí řazení sloupce. V případě potřeby tato metoda přidá sloupec do seznamu sloupců řazení. Ovládací prvek záhlaví používá pořadí řazení k vykreslení šipky řazení, která odkazuje nahoru nebo dolů.

Viz také

Graf hierarchie
Třídy
CMFCListCtrl – třída