Megosztás a következőn keresztül:


CMFCDropDownToolbarButton osztály

Megjegyzés:

A Microsoft Foundation Classes (MFC) könyvtár továbbra is támogatott. A továbbiakban azonban nem adunk hozzá funkciókat, és nem frissítjük a dokumentációt.

Az eszköztárgomb olyan típusa, amely kattintáskor normál gombként viselkedik. Azonban megnyit egy legördülő eszköztárat ( CMFCDropDownToolBar Osztály , ha a felhasználó lenyomja és lenyomja az eszköztár gombot).

Szemantika

class CMFCDropDownToolbarButton : public CMFCToolBarButton

Tagok

Nyilvános konstruktorok

Név Description
CMFCDropDownToolbarButton::CMFCDropDownToolbarButton Egy CMFCDropDownToolbarButton objektumot hoz létre.
CMFCDropDownToolbarButton::~CMFCDropDownToolbarButton Destruktor.

Nyilvános metódusok

Név Description
CMFCDropDownToolbarButton::CopyFrom Másolja egy másik eszköztárgomb tulajdonságait az aktuális gombra. (Felülbírálja a CMFCToolBarButton::CopyFrom.)
CMFCDropDownToolbarButton::CreateObject A keretrendszer egy ilyen típusú dinamikus példány létrehozásához használja.
CMFCDropDownToolbarButton::D ropDownToolbar Megnyílik egy legördülő eszköztár.
CMFCDropDownToolbarButton::ExportToMenuButton Szöveg másolása az eszköztár gombjáról egy menübe. (Felülbírálja a CMFCToolBarButton::ExportToMenuButton.)
CMFCDropDownToolbarButton::GetDropDownToolBar Lekéri a gombhoz társított legördülő eszköztárat.
CMFCDropDownToolbarButton::GetThisClass A keretrendszer az ehhez az osztálytípushoz társított CRuntimeClass objektumra mutató mutató lekéréséhez használja.
CMFCDropDownToolbarButton::IsDropDown Meghatározza, hogy a legördülő eszköztár jelenleg nyitva van-e.
CMFCDropDownToolbarButton::IsExtraSize Meghatározza, hogy a gomb megjeleníthető-e kiterjesztett szegélylel. (Felülbírálja a CMFCToolBarButton::IsExtraSize.)
CMFCDropDownToolbarButton::OnCalculateSize A keretrendszer meghívta, hogy kiszámítsa a gomb méretét a megadott eszközkörnyezethez és a rögzítési állapothoz. (Felülbírálja a CMFCToolBarButton::OnCalculateSize.)
CMFCDropDownToolbarButton::OnCancelMode A keretrendszer meghívta a WM_CANCELMODE üzenet kezelésére. (Felülbírálások CMCToolBarButton::OnCancelMode.)
CMFCDropDownToolbarButton::OnChangeParentWnd A keretrendszer meghívta, amikor a gomb be van szúrva egy új eszköztárba. (Felülbírálja a CMFCToolBarButton::OnChangeParentWnd.)
CMFCDropDownToolbarButton::OnClick A keretrendszer meghívja, amikor a felhasználó az egérgombra kattint. (Felülbírálja a CMFCToolBarButton::OnClick.)
CMFCDropDownToolbarButton::OnClickUp A keretrendszer meghívja, amikor a felhasználó felengedi az egérgombot. (Felülbírálja a CMFCToolBarButton::OnClickUp.)
CMFCDropDownToolbarButton::OnContextHelp A keretrendszer meghívja, amikor a szülő eszköztár egy WM_HELPHITTEST üzenetet kezel. (Felülbírálja a CMFCToolBarButton::OnContextHelp.)
CMFCDropDownToolbarButton::OnCustomizeMenu Módosítja a megadott menüt, amikor az alkalmazás megjelenít egy helyi menüt a szülőpulton. (Felülbírálja a CMFCToolBarButton::OnCustomizeMenu.)
CMFCDropDownToolbarButton::OnDraw A keretrendszer meghívta, hogy a megadott stílusok és beállítások használatával rajzolja meg a gombot. (Felülbírálja a CMFCToolBarButton::OnDraw.)
CMFCDropDownToolbarButton::OnDrawOnCustomizeList A keretrendszer meghívta, hogy rajzolja meg a gombot a Testreszabás párbeszédpanel Parancsok panelén. (Felülbírálja a CMFCToolBarButton::OnDrawOnCustomizeList.)
CMFCDropDownToolbarButton::Szerializálás Beolvassa ezt az objektumot egy archívumból, vagy egy archívumba írja. (Felülbírálja a CMFCToolBarButton::Szerializálás.)
CMFCDropDownToolbarButton::SetDefaultCommand Beállítja az alapértelmezett parancsot, amelyet a keretrendszer használ, amikor egy felhasználó rákattint a gombra.

Adattagok

Név Description
CMFCDropDownToolbarButton::m_uiShowBarDelay Megadja, hogy a felhasználó mennyi ideig tartsa lenyomva az egérgombot a legördülő eszköztár megjelenése előtt.

Megjegyzések

A CMFCDropDownToolBarButton szokásos gombtól abban különbözik, hogy a gomb jobb alsó sarkában egy kis nyíl található. Miután a felhasználó kiválaszt egy gombot a legördülő eszköztárból, a keretrendszer megjeleníti annak ikonját a felső szintű eszköztárgombon (a gomb a jobb alsó sarokban lévő kis nyíllal).

A legördülő eszköztár implementálásáról további információt a CMFCDropDownToolBar osztályban talál.

Az CMFCDropDownToolBarButton objektum exportálható egy CMFCToolBarMenuButton osztályobjektumba , és menügombként, előugró menüvel jeleníthető meg.

Öröklési hierarchia

CObject

CMFCToolBarButton

CMFCDropDownToolbarButton

Requirements

Fejléc: afxdropdowntoolbar.h

CMFCDropDownToolbarButton::CopyFrom

Másolja egy másik eszköztárgomb tulajdonságait az aktuális gombra.

virtual void CopyFrom(const CMFCToolBarButton& src);

Paraméterek

Src
[in] Hivatkozás arra a forrásgombra, amelyről a másolást el szeretné készíteni.

Megjegyzések

Hívja meg ezt a metódust egy másik eszköztárgomb másolásához ehhez az eszköztárgombhoz. Az src típusnak CMFCDropDownToolbarButtonkell lennie.

CMFCDropDownToolbarButton::CMFCDropDownToolbarButton

Egy CMFCDropDownToolbarButton objektumot hoz létre.

CMFCDropDownToolbarButton();

CMFCDropDownToolbarButton(
    LPCTSTR lpszName,
    CMFCDropDownToolBar* pToolBar);

Paraméterek

lpszName
[in] A gomb alapértelmezett szövege.

pToolBar
[in] A gomb megnyomásakor megjelenő objektumra mutató mutató CMFCDropDownToolBar .

Megjegyzések

A konstruktor második túlterhelése a legördülő gombra másolja a pToolBar által megadott eszköztár első gombját.

A legördülő eszköztárgombok általában a pToolBar által megadott eszköztár legutóbb használt gombjának szövegét használják. Az lpszName által megadott szöveget használja, amikor a gomb menügombmá alakul, vagy megjelenik a Testreszabás párbeszédpanel Parancsok lapján. A Testreszabás párbeszédpanelről további információt a CMFCToolBarsCustomizeDialog osztályban talál.

Example

Az alábbi példa bemutatja, hogyan hozhat létre egy objektumot az CMFCDropDownToolbarButton osztályból. Ez a kódrészlet a Visual Studio Demo-minta része.

// Add dropdown resources button
// CMFCToolBarsCustomizeDialog* pDlgCust
// CMFCDropDownToolBar m_wndToolbarResource
pDlgCust->AddButton(_T("Build"), CMFCDropDownToolbarButton(_T("Add Resource"), &m_wndToolbarResource));

Megnyílik egy legördülő eszköztár.

BOOL DropDownToolbar(CWnd* pWnd);

Paraméterek

pWnd
[in] A legördülő keret szülőablaka, vagy a null érték a legördülő eszköztár gomb szülőablakának használatához.

Visszaadott érték

Nonzero, ha a módszer sikeres; egyéb esetben 0.

Megjegyzések

A CMFCDropDownToolbarButton::OnClick metódus meghívja ezt a metódust a legördülő eszköztár megnyitásához, amikor a felhasználó lenyomja és lenyomja az eszköztár gombját.

Ez a metódus a CMFCDropDownFrame::Create metódus használatával hozza létre a legördülő eszköztárat. Ha a szülő eszköztár függőlegesen van rögzítve, ez a módszer az illesztéstől függően a legördülő eszköztárat a szülő eszköztár bal vagy jobb oldalára helyezi. Ellenkező esetben ez a módszer a legördülő eszköztárat a szülőpult alá rahelyezi.

Ez a módszer akkor meghiúsul, ha a pWnd ÉRTÉKE NULL, és a legördülő eszköztár gomb nem rendelkezik szülőablakkal.

CMFCDropDownToolbarButton::ExportToMenuButton

Szöveg másolása az eszköztár gombjáról egy menübe.

virtual BOOL ExportToMenuButton(CMFCToolBarMenuButton& menuButton) const;

Paraméterek

menuButton
[in] Hivatkozás a célmenü gombjára.

Visszaadott érték

Nemzero, ha a módszer sikeres; egyéb esetben 0.

Megjegyzések

Ez a metódus meghívja az alaposztály implementálását ( CMFCToolBarButton::ExportToMenuButton), majd hozzáfűzi a célmenügombhoz egy előugró menüt, amely a gomb minden egyes eszköztármenüelemét tartalmazza. Ez a metódus nem fűz hozzá almenüket az előugró menühöz.

Ez a módszer akkor hiúsul meg, ha a szülő eszköztár null értékű, m_pToolBarvagy az alaposztály implementációja HAMIS értéket ad vissza.

CMFCDropDownToolbarButton::GetDropDownToolBar

Lekéri a gombhoz társított legördülő eszköztárat.

CMFCToolBar* GetDropDownToolBar() const;

Visszaadott érték

A gombhoz társított legördülő eszköztár.

Megjegyzések

Ez a metódus az adattagot m_pToolBar adja vissza.

CMFCDropDownToolbarButton::IsDropDown

Meghatározza, hogy a legördülő eszköztár jelenleg nyitva van-e.

BOOL IsDropDown() const;

Visszaadott érték

Nem aktív, ha a legördülő eszköztár jelenleg nyitva van; egyéb esetben 0.

Megjegyzések

A keretrendszer a CMFCDropDownToolbarButton::D ropDownToolbar metódussal nyitja meg a legördülő eszköztárat. A keretrendszer bezárja a legördülő eszköztárat, amikor a felhasználó lenyomja a bal egérgombot a legördülő eszköztár nem ügyfél területén.

CMFCDropDownToolbarButton::IsExtraSize

Meghatározza, hogy a gomb megjeleníthető-e kiterjesztett szegélylel.

virtual BOOL IsExtraSize() const;

Visszaadott érték

Nem kötelező, ha az eszköztár gombja kiterjesztett szegélylel jeleníthető meg; egyéb esetben 0.

Megjegyzések

További információ a kiterjesztett szegélyekről: CMFCToolBarButton::IsExtraSize.

CMFCDropDownToolbarButton::m_uiShowBarDelay

Megadja, hogy a felhasználó mennyi ideig tartsa lenyomva az egérgombot a legördülő eszköztár megjelenése előtt.

static UINT m_uiShowBarDelay;

Megjegyzések

A késleltetési időt ezredmásodpercben mérik. Az alapértelmezett érték 500. Másik késleltetést a megosztott adattag értékének módosításával állíthat be.

CMFCDropDownToolbarButton::OnCalculateSize

A keretrendszer meghívta, hogy kiszámítsa a gomb méretét a megadott eszközkörnyezethez és a rögzítési állapothoz.

virtual SIZE OnCalculateSize(
    CDC* pDC,
    const CSize& sizeDefault,
    BOOL bHorz);

Paraméterek

Pdc
[in] A gombot megjelenítő eszközkörnyezet.

sizeDefault
[in] A gomb alapértelmezett mérete.

bHorz
[in] A szülő eszköztár dokkolásának állapota. Ez a paraméter IGAZ, ha az eszköztár vízszintesen van rögzítve, vagy lebegő, vagy HAMIS, ha az eszköztár függőlegesen van rögzítve.

Visszaadott érték

A SIZE gomb méreteit képpontokban tartalmazó struktúra.

Megjegyzések

Ez a módszer kibővíti az alaposztály implementációját ( CMFCToolBarButton::OnCalculateSize) a legördülő nyíl szélességének a gombméret vízszintes méretéhez való hozzáadásával.

CMFCDropDownToolbarButton::OnChangeParentWnd

A keretrendszer meghívta, amikor a gomb be van szúrva egy új eszköztárba.

virtual void OnChangeParentWnd(CWnd* pWndParent);

Paraméterek

pWndParent
[in] Az új szülőablak.

Megjegyzések

Ez a metódus felülbírálja az alaposztály implementációját ( CMFCToolBarButton::OnChangeParentWnd) a szövegfelirat ( CMFCToolBarButton::m_strText) törlésével, és a CMFCToolBarButton::m_bText és a CMFCToolBarButton::m_bUserButton adattagok FALSE értékre állításával.

CMFCDropDownToolbarButton::OnClick

A keretrendszer meghívja, amikor a felhasználó az egérgombra kattint.

virtual BOOL OnClick(
    CWnd* pWnd,
    BOOL bDelay = TRUE);

Paraméterek

pWnd
[in] Az eszköztár gomb szülőablaka.

bDelay
[in] IGAZ, ha az üzenetet késéssel kell kezelni.

Visszaadott érték

Nonzero, ha a gomb feldolgozza a kattintási üzenetet; egyéb esetben 0.

Megjegyzések

Ez a módszer kibővíti a CMFCToolBarButton::OnClick alaposztály-implementációt a legördülő eszköztár állapotának frissítésével.

Amikor egy felhasználó az eszköztár gombra kattint, ez a metódus létrehoz egy időzítőt, amely megvárja a CMFCDropDownToolbarButton::m_uiShowBarDelay adatelem által megadott időtartamot, majd megnyitja a legördülő eszköztárat a CMFCDropDownToolbarButton::D ropDownToolbar metódussal. Ez a metódus bezárja a legördülő eszköztárat, amikor a felhasználó másodszor kattint az eszköztár gombra.

CMFCDropDownToolbarButton::OnClickUp

A keretrendszer meghívja, amikor a felhasználó felengedi az egérgombot.

virtual BOOL OnClickUp();

Visszaadott érték

Nonzero, ha a gomb feldolgozza a kattintási üzenetet; egyéb esetben 0.

Megjegyzések

Ez a metódus kibővíti a CMFCToolBarButton::OnClickUp alaposztály-implementációt a legördülő eszköztár állapotának frissítésével.

Ez a metódus leállítja a legördülő eszköztár időzítőt, ha aktív. Ha meg van nyitva, bezárja a legördülő eszköztárat.

További információ a legördülő eszköztárról és a legördülő eszköztár időzítőjéről: CMFCDropDownToolbarButton::OnClick.

CMFCDropDownToolbarButton::OnContextHelp

A keretrendszer meghívja, amikor a szülő eszköztár egy WM_HELPHITTEST üzenetet kezel.

virtual BOOL OnContextHelp(CWnd* pWnd);

Paraméterek

pWnd
[in] Az eszköztár gomb szülőablaka.

Visszaadott érték

Nonzero, ha a gomb feldolgozza a súgóüzenetet; egyéb esetben 0.

Megjegyzések

Ez a metódus kibővíti az alaposztály implementálását ( CMFCToolBarButton::OnContextHelp) a CMFCDropDownToolbarButton::OnClick metódus meghívásával , a bDelay értéke FALSE. Ez a metódus a CMFCDropDownToolbarButton::OnClick által visszaadott értéket adja vissza.

A WM_HELPHITTEST üzenetről további információt a TN028: Context-Sensitive súgójában talál.

CMFCDropDownToolbarButton::OnCustomizeMenu

Módosítja a megadott menüt, amikor az alkalmazás megjelenít egy helyi menüt a szülőpulton.

virtual BOOL OnCustomizeMenu(CMenu* pMenu);

Paraméterek

pMenu
[in] A testre szabandó menü.

Visszaadott érték

Ez a metódus IGAZ értéket ad vissza.

Megjegyzések

Ez a módszer kibővíti az alaposztály implementálását ( CMFCToolBarButton::OnCustomizeMenu) a következő menüelemek letiltásával:

  • Másolás gomb képe

  • Gomb megjelenése

  • Image

  • Szöveg

  • Kép és szöveg

A metódus felülbírálásával módosíthatja a keretrendszer által testreszabási módban megjelenített helyi menüt.

CMFCDropDownToolbarButton::OnDraw

A keretrendszer meghívta, hogy a megadott stílusok és beállítások használatával rajzolja meg a gombot.

virtual void OnDraw(
    CDC* pDC,
    const CRect& rect,
    CMFCToolBarImages* pImages,
    BOOL bHorz = TRUE,
    BOOL bCustomizeMode = FALSE,
    BOOL bHighlight = FALSE,
    BOOL bDrawBorder = TRUE,
    BOOL bGrayDisabledButtons = TRUE);

Paraméterek

Pdc
[in] A gombot megjelenítő eszközkörnyezet.

téglalap
[in] A gomb határoló téglalapja.

pImages
[in] A gombhoz társított eszköztárképek gyűjteménye.

bHorz
[in] A szülő eszköztár dokkolásának állapota. Ez a paraméter IGAZ, ha a gomb vízszintesen van rögzítve, és HAMIS, ha a gomb függőlegesen van rögzítve.

bCustomizeMode
[in] Megadja, hogy az eszköztár testreszabási módban van-e. Ez a paraméter IGAZ, ha az eszköztár testreszabási módban van, és HAMIS, ha az eszköztár nincs testreszabási módban.

bHighlight
[in] Megadja, hogy a gomb ki van-e emelve. Ez a paraméter IGAZ, ha a gomb ki van emelve, és HAMIS, ha a gomb nincs kiemelve.

bDrawBorder
[in] Megadja, hogy a gomb megjelenítse-e a szegélyét. Ez a paraméter IGAZ, ha a gombnak meg kell jelennie a szegélye és HAMIS, ha a gomb nem jelenik meg a szegélye.

bGrayDisabledButtons
[in] Megadja, hogy árnyékolja-e a letiltott gombokat, vagy használja-e a letiltott képek gyűjteményét. Ez a paraméter IGAZ, ha a letiltott gombokat árnyékoltnak és HAMISnak kell lennie, ha ez a módszer a letiltott képek gyűjteményét használja.

Megjegyzések

A metódus felülbírálása az eszköztár gombrajzának testreszabásához.

CMFCDropDownToolbarButton::OnDrawOnCustomizeList

A keretrendszer meghívta, hogy rajzolja meg a gombot a Testreszabás párbeszédpanel Parancsok panelén.

virtual int OnDrawOnCustomizeList(
    CDC* pDC,
    const CRect& rect,
    BOOL bSelected);

Paraméterek

Pdc
[in] A gombot megjelenítő eszközkörnyezet.

téglalap
[in] A gomb határoló téglalapja.

b Kijelölve
[in] Azt jelzi, hogy a gomb ki van-e jelölve. Ha ez a paraméter IGAZ, a gomb ki van jelölve. Ha ez a paraméter HAMIS, a gomb nincs kiválasztva.

Visszaadott érték

A gomb szélessége képpontban a megadott eszközkörnyezetben.

Megjegyzések

Ezt a metódust a testreszabási párbeszédpanel ( Parancsok lap) hívja meg, amikor a gombnak meg kell jelennie a tulajdonos-rajz listamezőben.

Ez a módszer kiterjeszti az alaposztály implementálását ( CMFCToolBarButton::OnDrawOnCustomizeList) a gomb szövegfeliratának a gomb nevére (azaz a konstruktornak átadott lpszName paraméter értékére).

CMFCDropDownToolbarButton::Szerializálás

Beolvassa ezt az objektumot egy archívumból, vagy egy archívumba írja.

virtual void Serialize(CArchive& ar);

Paraméterek

Ar
[in] Az CArchive az objektum, amelyből vagy amelyből szerializálni kell.

Megjegyzések

Ez a módszer kibővíti az alaposztály implementálását ( CMFCToolBarButton::Szerializálja) a szülő eszköztár erőforrás-azonosítójának szerializálásával. Amikor az archívum betöltődik ( CArchive::IsLoading nemero értéket ad vissza), ez a metódus a m_pToolBar szerializált erőforrás-azonosítót tartalmazó eszköztárra állítja az adattagot.

CMFCDropDownToolbarButton::SetDefaultCommand

Beállítja az alapértelmezett parancsot, amelyet a keretrendszer használ, amikor egy felhasználó rákattint a gombra.

void SetDefaultCommand(UINT uiCmd);

Paraméterek

uiCmd
[in] Az alapértelmezett parancs azonosítója.

Megjegyzések

Hívja meg ezt a metódust egy alapértelmezett parancs megadásához, amelyet a keretrendszer végrehajt, amikor a felhasználó a gombra kattint. Az uiCmd által megadott parancsazonosítóval rendelkező elemet a szülő legördülő eszköztáron kell elhelyezni.

Lásd még

hierarchiadiagram
osztályok
CMFCDropDownToolBar osztály
CMFCToolBar osztály
CMFCToolBarMenuButton osztály
Útmutató: Vezérlők elhelyezése eszköztárakon