CMFCRibbonComboBox – třída
Třída CMFCRibbonComboBox
implementuje ovládací prvek pole se seznamem, který můžete přidat na pás karet, panel pásu karet nebo místní nabídku pásu karet.
Syntaxe
class CMFCRibbonComboBox : public CMFCRibbonEdit
Členové
Konstruktory
Název | Popis |
---|---|
CMFCRibbonComboBox::CMFCRibbonComboBox | Vytvoří CMFCRibbonComboBox objektu. |
Veřejné metody
Název | Popis |
---|---|
CMFCRibbonComboBox::AddItem | Připojí jedinečnou položku do seznamu. |
CMFCRibbonComboBox::D eleteItem | Odstraní zadanou položku ze seznamu. |
CMFCRibbonComboBox::EnableDropDownListResize | Určuje, jestli může pole seznamu změnit velikost při rozevíracím seznamu. |
CMFCRibbonComboBox::FindItem | Vrátí index první položky v seznamu, který odpovídá zadanému řetězci. |
CMFCRibbonComboBox::GetCount | Vrátí počet položek v seznamu. |
CMFCRibbonComboBox::GetCurSel | Získá index aktuálně vybrané položky v seznamu. |
CMFCRibbonComboBox::GetDropDownHeight | Získá výšku seznamu při vyřazení seznamu. |
CMFCRibbonComboBox::GetIntermediateSize | Vrátí velikost pole se seznamem zobrazenou v přechodném režimu. |
CMFCRibbonComboBox::GetItem | Vrátí řetězec přidružený k položce v zadaném indexu v seznamu. |
CMFCRibbonComboBox::GetItemData | Vrátí data přidružená k položce v zadaném indexu v seznamu. |
CMFCRibbonComboBox::HasEditBox | Určuje, zda ovládací prvek obsahuje textové pole. |
CMFCRibbonComboBox::IsResizeDropDownList | Určuje, zda lze změnit velikost seznamu. |
CMFCRibbonComboBox::OnSelectItem | Volá se podle architektury, když uživatel vybere položku v seznamu. |
CMFCRibbonComboBox::RemoveAllItems | Odstraní všechny položky ze seznamu a vymaže textové pole. |
CMFCRibbonComboBox::SelectItem | Vybere položku v seznamu. |
CMFCRibbonComboBox::SetDropDownHeight | Nastaví výšku pole seznamu při vyřazení. |
Poznámky
Pole se seznamem pásu karet se skládá ze seznamu v kombinaci se statickým popiskem nebo popiskem, který může uživatel upravit. Při vytváření pole se seznamem pásu karet musíte zadat požadovaný typ.
Příklad
Následující příklad ukazuje, jak sestavit objekt CMFCRibbonComboBox
třídy, přidat položku do pole se seznamem, vybrat položku v poli se seznamem a přidat pole se seznamem na panel.
// Create a simple combo box with two entries:
// The first parameter is the id of the combo box.
// The third parameter is the width of the combo box in pixels.
// The fourth parameter is the display label of the combo box.
// The fifth parameter is the index of the small image of the combo box.
CMFCRibbonComboBox *pComboSimple = new CMFCRibbonComboBox(-1, FALSE, -1, 0, -1);
// Add two items to the combo box and select the first item in the list:
pComboSimple->AddItem(_T("Hi!"));
pComboSimple->AddItem(_T("Hello!"));
pComboSimple->SelectItem(0);
// Add combo button to "Favorites" panel:
// CMFCRibbonPanel* pPanelFavorites
pPanelFavorites->Add(pComboSimple);
Hierarchie dědičnosti
Požadavky
Hlavička: afxribboncombobox.h
CMFCRibbonComboBox::AddItem
Připojí jedinečnou položku do seznamu.
virtual INT_PTR AddItem(
LPCTSTR lpszItem,
DWORD_PTR dwData=0);
Parametry
lpszItem
[v] Řetězec položky, kterou chcete přidat.
dwData
[v] Data přidružená k položce, která chcete přidat.
Návratová hodnota
Index připojených položek založený na nule.
CMFCRibbonComboBox::CMFCRibbonComboBox
CMFCRibbonComboBox
Vytvoří objekt.
public:
CMFCRibbonComboBox(
UINT nID,
BOOL bHasEditBox=TRUE,
Int nWidth=-1,
LPCTSTR lpszLabel=NULL,
Int nImage=-1);
protected:
CMFCRibbonComboBox();
Parametry
Nid
[v] ID pole se seznamem.
bHasEditBox
[v] TRUE, pokud chcete textové pole v ovládacím prvku; JINAK NEPRAVDA.
nWidth
[v] Šířka pole se seznamem v pixelech; nebo -1 pro výchozí šířku.
lpszLabel
[v] Zobrazovaný popisek pole se seznamem.
nImage
[v] Malý index obrázku pole se seznamem.
Poznámky
Výchozí šířka je 108 pixelů.
CMFCRibbonComboBox::D eleteItem
Odstraní zadanou položku ze seznamu.
BOOL DeleteItem(int iIndex);
BOOL DeleteItem(DWORD_PTR dwData);
BOOL DeleteItem(LPCTSTR lpszText);
Parametry
iIndex
[v] Index položky, který se má odstranit, založený na nule.
dwData
[v] Data přidružená k položce, která se má odstranit.
lpszText
[v] Řetězec položky, kterou chcete odstranit. Pokud existuje více položek se stejným řetězcem, první položka se odstraní.
Návratová hodnota
TRUE, pokud byla zadaná položka odstraněna; jinak NEPRAVDA.
Poznámky
CMFCRibbonComboBox::EnableDropDownListResize
Určuje, jestli může pole seznamu změnit velikost při rozevíracím seznamu.
void EnableDropDownListResize(BOOL bEnable=FALSE);
Parametry
bEnable
[v] TRUE pro povolení změny velikosti; NEPRAVDA, pokud chcete zakázat změnu velikosti.
Poznámky
Když je změna velikosti povolená, změní se velikost seznamu tak, aby odpovídala zobrazeným položkám.
CMFCRibbonComboBox::FindItem
Vrátí index první položky v seznamu, který odpovídá zadanému řetězci.
int FindItem(LPCTSTR lpszText) const;
Parametry
lpszText
[v] Řetězec položky v seznamu.
Návratová hodnota
Index položky založený na nule; nebo -1, pokud položka nebyla nalezena.
Poznámky
CMFCRibbonComboBox::GetCount
Vrátí počet položek v seznamu.
INT_PTR GetCount() const;
Návratová hodnota
Počet položek v seznamu nebo 0, pokud seznam neobsahuje žádné položky.
Poznámky
CMFCRibbonComboBox::GetCurSel
Získá index aktuálně vybrané položky v seznamu.
int GetCurSel() const;
Návratová hodnota
Index na základě nuly aktuálně vybrané položky v seznamu; nebo -1, pokud není vybrána žádná položka.
CMFCRibbonComboBox::GetDropDownHeight
Získá výšku seznamu při vyřazení seznamu.
int GetDropDownHeight();
Návratová hodnota
Výška seznamu v pixelech.
Poznámky
CMFCRibbonComboBox::GetIntermediateSize
Vrátí velikost pole se seznamem zobrazenou v přechodném režimu.
virtual CSize GetIntermediateSize(CDC* pDC);
Parametry
pDC
[v] Ukazatel na kontext zařízení pro pole se seznamem
Návratová hodnota
Velikost pole se seznamem.
Poznámky
Vrácená velikost je založena na velikosti pole se seznamem při zobrazení malých obrázků.
CMFCRibbonComboBox::GetItem
Vrátí řetězec přidružený k položce v zadaném indexu v seznamu.
LPCTSTR GetItem(int iIndex) const;
Parametry
iIndex
[v] Index položky v seznamu založený na nule.
Návratová hodnota
Ukazatel na řetězec přidružený k položce; v opačném případě hodnota NULL, pokud je parametr indexu neplatný nebo pokud je parametr indexu -1 a v poli se seznamem není vybraná žádná položka.
Poznámky
CMFCRibbonComboBox::GetItemData
Vrátí data přidružená k položce v zadaném indexu v seznamu.
DWORD_PTR GetItemData(int iIndex) const;
Parametry
iIndex
[v] Index položky v seznamu založený na nule.
Návratová hodnota
Data přidružená k položce; nebo 0, pokud položka neexistuje nebo pokud je parametr indexu -1 a v seznamu není vybraná položka.
CMFCRibbonComboBox::HasEditBox
Určuje, zda ovládací prvek obsahuje textové pole.
BOOL HasEditBox() const;
Návratová hodnota
TRUE, pokud ovládací prvek obsahuje textové pole; jinak NEPRAVDA.
Poznámky
CMFCRibbonComboBox::IsResizeDropDownList
Určuje, zda lze změnit velikost seznamu.
BOOL IsResizeDropDownList() const;
Návratová hodnota
TRUE, pokud lze změnit velikost seznamu; jinak NEPRAVDA. CMFCRibbonComboBox::EnableDropDownListResize
Poznámky
Změnu velikosti seznamu můžete povolit pomocí metody CMFCRibbonComboBox::EnableDropDownListResize .
CMFCRibbonComboBox::OnSelectItem
Volá se podle architektury, když uživatel vybere položku v seznamu.
virtual void OnSelectItem(int nItem);
Parametry
nItem
[v] Index vybrané položky.
Poznámky
Tuto metodu přepište, pokud chcete zpracovat výběr uživatelského vstupu.
CMFCRibbonComboBox::RemoveAllItems
Odstraní všechny položky ze seznamu a vymaže textové pole.
void RemoveAllItems();
Poznámky
CMFCRibbonComboBox::SelectItem
Vybere položku v seznamu.
BOOL SelectItem(int iIndex);
BOOL SelectItem(DWORD_PTR dwData);
BOOL SelectItem(LPCTSTR lpszText);
Parametry
iIndex
[v] Index položky v seznamu založený na nule.
dwData
[v] Data přidružená k položce v seznamu.
lpszText
[v] Řetězec položky v seznamu.
Návratová hodnota
TRUE, pokud byla metoda úspěšná; jinak NEPRAVDA.
Poznámky
CMFCRibbonComboBox::SetDropDownHeight
Nastaví výšku pole seznamu při vyřazení.
void SetDropDownHeight(int nHeight);
Parametry
nHeight
[v] Výška seznamu v pixelech.
Poznámky
Výchozí výška je 150 pixelů.