CMFCRibbonBaseElement 類別
類別 CMFCRibbonBaseElement
是您可以新增至 功能區列之所有專案的基類。 功能區項目的範例包括功能區按鈕、功能區核取方塊和功能區下拉式方塊。
語法
class CMFCRibbonBaseElement : public CObject
成員
公用建構函式
名稱 | 描述 |
---|---|
CMFCRibbonBaseElement |
建構 CMFCRibbonBaseElement 物件。 |
公用方法
受保護的方法
名稱 | 描述 |
---|---|
CMFCRibbonBaseElement::OnProcessKey | 當使用者按下快捷鍵時,由架構呼叫。 |
CMFCRibbonBaseElement::OnSetFocus | 當功能區專案接收或失去輸入焦點時,由架構呼叫。 |
備註
類別 CMFCRibbonBaseElement
會定義所有功能區元素通用的屬性,包括命令標識符、文字標籤、工具提示文字、元素描述和狀態(可以聚焦、反白顯示、按下、停用、核取或卸除)。
功能區專案的影像大小是由 RibbonImageType
成員所定義,可以是下列其中一個值:
RibbonImageLarge
RibbonImageSmall
視其大小而定,功能區元素會顯示小型或大型影像。
範例
下例示範如何在 CMFCRibbonBaseElement
類別中使用各種方法。 此範例示範如何從CMFCRibbonStatusBar
類別取得CMFCRibbonBaseElement
對象、設定功能區專案的描述、設定文字、設定索引鍵提示,以及設定功能區元素的工具提示文字。 這段程式碼片段是 Draw 用戶端範例的一部分。
// CMFCRibbonStatusBar m_wndStatusBar
CMFCRibbonBaseElement *pPane = m_wndStatusBar.FindByID(nID);
pPane->SetDescription(_T("a pane"));
// CString strText
pPane->SetText(strText);
pPane->SetKeys(_T("p"));
pPane->SetToolTipText(_T("this is a pane"));
繼承階層架構
需求
標頭: afxbaseribbonelement.h
CMFCRibbonBaseElement::AddToKeyList
將功能區專案的索引鍵提示新增至索引鍵提示的陣列。
virtual void AddToKeyList(
CArray<CMFCRibbonKeyTip*, CMFCRibbonKeyTip*>& arElems);
參數
arElems
[in] 索引鍵提示的 CArray 參考。
備註
啟用功能區按鍵提示功能時,當使用者按下 ALT 鍵或 F10 鍵時,架構會顯示功能區按鍵提示。
CMFCRibbonBaseElement::AddToListBox
將功能區專案加入至指定的功能區命令清單框。
virtual int AddToListBox(
CMFCRibbonCommandsListBox* pWndListBox,
BOOL bDeep);
參數
pWndListBox
[in]命令清單框的指標。
bDeep
[in]不使用此參數。
傳回值
新增功能區專案之以零起始的索引。
備註
架構會將功能區元素新增至命令清單框,讓用戶能夠自定義使用者介面。
CMFCRibbonBaseElement::CanBeAddedToQuickAccessToolBar
指出功能區專案是否可以新增至快速存取工具列。
virtual BOOL CanBeAddedToQuickAccessToolBar() const;
傳回值
如果可以加入專案,則為TRUE;否則為 FALSE。
備註
CMFCRibbonBaseElement::CanBeCompacted
指出功能區專案的大小是否可以壓縮。
virtual BOOL CanBeCompacted() const;
傳回值
如果功能區專案的大小可以壓縮,則為TRUE;否則為 FALSE。
備註
功能區專案的大小可以是精簡、中繼或大型。
CMFCRibbonBaseElement::CanBeStretched
指出功能區元素的高度是否可以垂直增加至功能區列的高度。
virtual BOOL CanBeStretched();
傳回值
一律會傳回 TRUE。
備註
根據預設,此方法一律會傳回 TRUE。 覆寫此方法,指出功能區元素的高度是否可以垂直增加至功能區列的高度。
CMFCRibbonBaseElement::CanBeStretchedHorizontally
指出功能區項目的寬度是否可以變更。
virtual BOOL CanBeStretchedHorizontally();
傳回值
一律會傳回 FALSE。
備註
根據預設,此方法一律會傳回 FALSE。 覆寫這個方法,指出功能區專案的寬度是否可以變更。
CMFCRibbonBaseElement::CleanUpSizes
清除功能區項目的維度設定。
virtual void CleanUpSizes();
備註
根據預設,此方法不會執行任何動作。 覆寫衍生類別中的這個方法,以重設功能區專案的維度設定。
CMFCRibbonBaseElement::ClosePopupMenu
關閉功能區專案的快捷功能表。
virtual void ClosePopupMenu();
備註
CMFCRibbonBaseElement::CopyFrom
將指定 之 CMFCRibbonBaseElement 的狀態複製到目前的 物件。
virtual void CopyFrom(const CMFCRibbonBaseElement& src);
參數
src
[in]來源 CMFCRibbonBaseElement 物件。
備註
CMFCRibbonBaseElement::D estroyCtrl
終結功能區專案。
virtual void DestroyCtrl();
備註
根據預設,此方法不會執行任何動作。 覆寫衍生類別中的這個方法,以終結功能區專案。
CMFCRibbonBaseElement::D rawImage
繪製功能區專案的影像。
virtual void DrawImage(
CDC* pDC,
RibbonImageType type,
CRect rectImage);
參數
pDC
[in]裝置內容的指標。
type
[in]影像類型列舉值。 如需可能值的清單,請參閱一節。
rectImage
[in]影像矩形。
備註
根據預設,此方法不會執行任何動作。 覆寫衍生類別中的這個方法,以繪製功能區專案的影像。
下表列出類型參數的可能值:
值 | Description |
---|---|
RibbonImageLarge |
大型 32x32 像素影像大小。 |
RibbonImageSmall |
小型16x16像素影像大小。 |
CMFCRibbonBaseElement::Find
如果指定指標指向目前的物件,則傳回指定的指標。
virtual CMFCRibbonBaseElement* Find(const CMFCRibbonBaseElement* pElement);
參數
pElement
[in]功能區專案的指標。
傳回值
如果 pElement 指向目前物件,則為功能區專案的指標,否則為 NULL。
備註
CMFCRibbonBaseElement::FindByData
如果功能區專案包含指定的數據,則擷取功能區專案的指標。
virtual CMFCRibbonBaseElement* FindByData(DWORD_PTR dwData);
參數
dwData
[in]與功能區專案相關聯的數據。
傳回值
如果功能區元素包含指定的數據,則為指標;否則為 NULL。
備註
CMFCRibbonBaseElement::FindByID
如果指定的命令標識碼識別該專案,則擷取功能區專案的指標。
virtual CMFCRibbonBaseElement* FindByID(UINT uiCmdID);
參數
uiCmdID
[in]功能區專案的命令標識碼。
傳回值
如果指定的命令標識碼識別該專案,則為功能區專案的指標;否則為 NULL。
備註
CMFCRibbonBaseElement::FindByOriginal
如果目前功能區專案的原始功能區專案符合指定的功能區專案,則擷取目前功能區的指標。
virtual CMFCRibbonBaseElement* FindByOriginal(CMFCRibbonBaseElement* pOriginal);
參數
pOriginal
[in]功能區專案的指標。
傳回值
如果功能區專案的原始功能區專案符合指定的功能區專案,則為功能區專案的指標;否則為 NULL。
備註
複製到另一個容器的功能區元素會保留原始功能區專案的指標。
CMFCRibbonBaseElement::GetCompactSize
傳回功能區項目的壓縮大小。
virtual CSize GetCompactSize(CDC* pDC);
參數
pDC
[in]裝置內容的指標。
傳回值
功能區專案的精簡大小。
注意
精簡大小表示功能區元素已截斷(它會顯示小型影像,或沒有文字的影像)。
CMFCRibbonBaseElement::GetData
擷取與功能區專案相關聯的使用者定義數據。
DWORD_PTR GetData() const;
傳回值
與功能區專案相關聯的使用者定義數據。
CMFCRibbonBaseElement::GetDescription
傳回功能區專案的描述。
virtual CString GetDescription() const;
傳回值
功能區專案描述。 如果功能區元素位於 CMFCRibbonMainPanel 類別上,則描述會顯示在狀態列或工具提示中,或在功能表按鈕下顯示。
CMFCRibbonBaseElement::GetDroppedDown
如果已卸除功能區專案的快捷功能表,擷取功能區專案的指標。
virtual CMFCRibbonBaseElement* GetDroppedDown();
傳回值
如果已卸除功能區專案的快捷功能表,則為功能區專案的指標;否則為 NULL。
備註
CMFCRibbonBaseElement::GetElements
將目前的功能區專案加入至指定的陣列。
virtual void GetElements(
CArray<CMFCRibbonBaseElement*, CMFCRibbonBaseElement*>& arElements);
參數
arElements
[in, out]功能區元素的陣列。
備註
CMFCRibbonBaseElement::GetElementsByID
如果目前的功能區專案包含指定的命令標識元,則將目前的功能區專案加入指定的陣列。
virtual void GetElementsByID(
UINT uiCmdID,
CArray<CMFCRibbonBaseElement*, CMFCRibbonBaseElement*>& arElements);
參數
uiCmdID
[in]功能區專案的命令標識碼。
arElements
[in]功能區元素的陣列。
備註
CMFCRibbonBaseElement::GetHighlighted
如果反白顯示功能區專案,擷取功能區專案的指標。
virtual CMFCRibbonBaseElement* GetHighlighted();
傳回值
反白顯示功能區專案的指標;否則為 NULL。
備註
CMFCRibbonBaseElement::GetID
傳回功能區專案的命令標識碼。
UINT GetID() const;
傳回值
功能區專案的命令標識碼。
CMFCRibbonBaseElement::GetImageSize
傳回功能區項目的影像大小。
virtual CSize GetImageSize(RibbonImageType R) const;
傳回值
功能區專案的影像大小。
CMFCRibbonBaseElement::GetIntermediateSize
傳回中繼狀態之功能區項目的大小。
virtual CSize GetIntermediateSize(CDC* pDC);
參數
pDC
[in]裝置內容的指標。
傳回值
功能區專案在其中繼狀態的大小。
CMFCRibbonBaseElement::GetKeys
傳回與功能區項目相關聯的按鍵提示。
LPCTSTR GetKeys() const;
傳回值
與功能區項目相關聯的索引鍵提示。
CMFCRibbonBaseElement::GetKeyTipRect
擷取功能區元素的索引鍵提示界限矩形。
virtual CRect GetKeyTipRect(
CDC* pDC,
BOOL bIsMenu);
參數
pDC
[in]裝置內容的指標。
bIsMenu
[in]如果功能區元素顯示快捷功能表,則為TRUE;否則為 FALSE。
傳回值
一律傳回具有 0 個值的矩形。
備註
覆寫衍生類別中的這個方法,以傳回索引鍵提示界限矩形。
CMFCRibbonBaseElement::GetKeyTipSize
擷取按鍵提示文字的大小。
virtual CSize GetKeyTipSize(CDC* pDC);
參數
pDC
[in]裝置內容的指標。
傳回值
按鍵提示文字的大小。
備註
CMFCRibbonBaseElement::GetLocationInGroup
指出功能區群組中功能區元素的顯示位置。
RibbonElementLocation GetLocationInGroup() const;
傳回值
RibbonElementLocation
列舉值。 下表列出可能的值。
值 | Description |
---|---|
RibbonElementNotInGroup |
功能區專案不包含在功能區群組中。 |
RibbonElementSingleInGroup |
功能區項目會顯示為功能區群組中唯一的專案。 |
RibbonElementFirstInGroup |
功能區元素會顯示在功能區群組的左端。 |
RibbonElementLastInGroup |
功能區元素會顯示在功能區群組的右端。 |
RibbonElementMiddleInGroup |
功能區元素不會顯示在功能區群組的任一端。 |
備註
功能區專案群組只會水平對齊。
CMFCRibbonBaseElement::GetMenuKeys
傳回功能區元素的功能表按鍵提示。
LPCTSTR GetMenuKeys() const;
傳回值
與功能區項目相關聯的功能表按鍵提示。
備註
叫用時,功能表鍵提示會顯示快捷功能表。
CMFCRibbonBaseElement::GetNotifyID
擷取功能區專案的通知命令標識碼。
virtual UINT GetNotifyID();
傳回值
通知命令標識碼。
備註
CMFCRibbonBaseElement::GetOriginal
擷取原始功能區專案。
CMFCRibbonBaseElement* GetOriginal() const;
傳回值
原始功能區專案的指標。
備註
複製到另一個容器的功能區元素會保留原始功能區專案的指標。
CMFCRibbonBaseElement::GetParentCategory
擷取功能區專案的功能區類別。
CMFCRibbonCategory* GetParentCategory() const;
傳回值
功能區類別目錄的指標。
備註
CMFCRibbonBaseElement::GetParentPanel
擷取包含功能區元素的功能區面板。
virtual CMFCRibbonPanel* GetParentPanel() const;
傳回值
包含功能區元素的功能區面板指標。
備註
CMFCRibbonBaseElement::GetParentRibbonBar
擷取功能區專案的父功能區列。
CMFCRibbonBar* GetParentRibbonBar() const;
傳回值
功能區專案的父功能區列指標。
備註
CMFCRibbonBaseElement::GetParentWnd
擷取功能區專案的父視窗。
virtual CWnd* GetParentWnd() const;
傳回值
如果方法成功,則為功能區專案的父視窗指標;否則為 NULL。
備註
功能區專案的父視窗是 CMFCRibbonBar 類別 或 CMFCRibbonPanelMenuBar。
CMFCRibbonBaseElement::GetPressed
如果使用者目前按下功能區專案,則擷取功能區專案的指標。
virtual CMFCRibbonBaseElement* GetPressed();
傳回值
如果使用者目前按下功能區專案,則為功能區專案的指標;否則為 NULL。
備註
CMFCRibbonBaseElement::GetQuickAccessToolBarID
在快速存取工具列中,擷取功能區專案的命令標識碼。
virtual UINT GetQuickAccessToolBarID() const;
傳回值
當功能區元素位於快速存取工具列時,其命令標識符。
備註
CMFCRibbonBaseElement::GetRect
傳回功能區專案的周框。
CRect GetRect() const;
傳回值
功能區專案的周框。 矩形的位置位於父功能區控件的座標中。
CMFCRibbonBaseElement::GetRegularSize
傳回功能區項目的一般大小。
virtual CSize GetRegularSize(CDC* pDC) = 0;
參數
pDC
[in]裝置內容的指標。
傳回值
功能區專案的一般大小。
備註
注意
一般大小是功能區元素的最大可能大小。
CMFCRibbonBaseElement::GetSize
傳回功能區專案的目前大小。
virtual CSize GetSize(CDC* pDC);
參數
pDC
[in]裝置內容的指標。
傳回值
功能區專案的目前大小。
CMFCRibbonBaseElement::GetText
傳回與功能區項目相關聯的文字。
LPCTSTR GetText() const;
傳回值
與功能區項目相關聯的文字。
CMFCRibbonBaseElement::GetToolTipText
傳回功能區項目的工具提示文字。
virtual CString GetToolTipText() const;
傳回值
功能區元素的工具提示文字。
CMFCRibbonBaseElement::GetTopLevelRibbonBar
擷取功能區元素的最上層功能區列。
CMFCRibbonBar* GetTopLevelRibbonBar() const;
傳回值
如果方法成功,則為功能區元素最上層功能區列的指標;否則為 NULL。
備註
CMFCRibbonBaseElement::HasCompactMode
指定功能區項目是否有精簡模式。
virtual BOOL HasCompactMode() const;
傳回值
如果功能區專案具有精簡模式,則為TRUE。 否則為 FALSE。
備註
注意
在精簡模式中,元素只會顯示小型影像。
CMFCRibbonBaseElement::HasIntermediateMode
指定功能區項目是否有中繼模式。
virtual BOOL HasIntermediateMode() const;
傳回值
如果功能區專案具有中繼模式,則為TRUE,否則為 FALSE。 在中繼模式中,元素會在影像右側顯示小型影像和文字。
備註
CMFCRibbonBaseElement::HasLargeMode
指定功能區項目是否有大型模式。
virtual BOOL HasLargeMode() const;
傳回值
如果功能區專案具有大型模式,則為TRUE。 否則為 FALSE。
備註
在大型模式中,元素可以採用父面板的完整高度。
CMFCRibbonBaseElement::HasMenu
指出功能區專案是否有功能表。
virtual BOOL HasMenu() const;
傳回值
一律會傳回 FALSE。
備註
根據預設,此方法一律會傳回 FALSE。 覆寫衍生類別中的這個方法,以指出功能區專案是否有功能表。
CMFCRibbonBaseElement::HitTest
如果指定的點位於功能區元素中,則擷取功能區專案的指標。
virtual CMFCRibbonBaseElement* HitTest(CPoint point);
參數
point
[in]不使用此參數。
傳回值
如果功能區元素存在,則為指標;否則為 FALSE。
備註
根據預設,這個方法一律會在功能區元素存在時傳回有效的指標。 覆寫這個方法,以指出點是否位於功能區元素中。
CMFCRibbonBaseElement::IsAlignByColumn
指出功能區專案是否垂直對齊其他功能區專案。
virtual BOOL IsAlignByColumn() const;
傳回值
一律會傳回 TRUE。
備註
根據預設,此方法一律會傳回 TRUE。 覆寫衍生類別中的這個方法,以指出衍生的功能區專案是否垂直對齊其他功能區專案。
CMFCRibbonBaseElement::IsAlwaysLargeImage
指出功能區專案影像大小是否一律很大。
virtual BOOL IsAlwaysLargeImage() const;
傳回值
如果功能區專案影像大小一律很大,則為TRUE;否則為 FALSE。
備註
大型影像大小為32 x32圖元。
CMFCRibbonBaseElement::IsAutoRepeatMode
指出功能區專案是否處於自動重複模式。
virtual BOOL IsAutoRepeatMode(int& nDelay) const;
參數
nDelay
[in]不使用此參數。
傳回值
一律會傳回 FALSE。
備註
根據預設,此方法一律會傳回 FALSE。 覆寫此方法,指出功能區專案是否處於自動重複模式。
在自動重複模式中,功能區元素會以毫秒為單位的設定間隔回應持續用戶輸入。
CMFCRibbonBaseElement::IsChecked
指定是否檢查功能區專案。
virtual BOOL IsChecked() const;
傳回值
如果已檢查功能區專案,則為TRUE;否則為 FALSE。
CMFCRibbonBaseElement::IsCompactMode
指定功能區專案是否處於精簡模式。
BOOL IsCompactMode() const;
傳回值
如果功能區項目處於精簡模式,則為TRUE;否則為 FALSE。
CMFCRibbonBaseElement::IsDefaultMenuLook
指出功能區專案是否設定為顯示為快顯命令。
BOOL IsDefaultMenuLook() const;
傳回值
如果功能區項目設定為顯示為快顯命令,則為TRUE;否則為 FALSE。
備註
CMFCRibbonBaseElement::IsDisabled
指定是否停用功能區專案。
virtual BOOL IsDisabled() const;
傳回值
如果功能區專案已停用,則為TRUE;否則為 FALSE。
CMFCRibbonBaseElement::IsDroppedDown
指定功能區專案是否顯示快捷功能表,並且已卸除。
virtual BOOL IsDroppedDown() const;
傳回值
TRUE 是表示 如果功能區元素已下拉並顯示快捷功能表;否則為 FALSE。
CMFCRibbonBaseElement::IsFocused
指定功能區專案是否具有焦點。
virtual BOOL IsFocused() const;
傳回值
如果功能區專案具有焦點,則為TRUE;否則為 FALSE。
CMFCRibbonBaseElement::IsGalleryIcon
指出功能區專案是否包含在功能區庫中。
virtual BOOL IsGalleryIcon() const;
傳回值
一律會傳回 FALSE。
備註
根據預設,此方法一律會傳回 FALSE。 覆寫衍生類別中的這個方法,以指出功能區專案是否包含在功能區庫中。
CMFCRibbonBaseElement::IsHighlighted
指定是否反白顯示功能區專案。
virtual BOOL IsHighlighted() const;
傳回值
如果功能區專案反白顯示,則為TRUE;否則為 FALSE。
備註
CMFCRibbonBaseElement::IsIntermediateMode
指出功能區專案的目前影像是否為中繼大小。
BOOL IsIntermediateMode() const;
傳回值
如果功能區專案的影像是中繼大小,則為TRUE;否則為 FALSE。
備註
中繼影像大小為16 x16像素。
CMFCRibbonBaseElement::IsLargeMode
指出功能區專案的目前影像大小是否很大。
BOOL IsLargeMode() const;
傳回值
如果功能區專案的影像大小很大,則為TRUE;否則為 FALSE。
備註
大型影像大小為32 x32圖元。
CMFCRibbonBaseElement::IsMenuMode
指出功能區專案是否包含在功能表中。
BOOL IsMenuMode() const;
傳回值
如果功能區專案包含在功能表中,則為TRUE;否則為 FALSE。
備註
CMFCRibbonBaseElement::IsPressed
指出使用者是否已按下功能區專案。
virtual BOOL IsPressed() const;
傳回值
如果使用者已按下功能區專案,則為TRUE;否則為 FALSE。
CMFCRibbonBaseElement::IsQATMode
指出功能區專案是否包含在快速存取工具列中。
BOOL IsQATMode() const;
傳回值
如果功能區元素包含在快速存取工具列中,則為TRUE;否則為 FALSE。
備註
CMFCRibbonBaseElement::IsSeparator
指出功能區專案是否為顯示分隔符。
virtual BOOL IsSeparator() const;
傳回值
如果功能區項目是顯示分隔符,則為TRUE;否則為 FALSE。
備註
CMFCRibbonBaseElement::IsShowGroupBorder
指出功能區專案是否包含在顯示通用框線的群組中。
BOOL IsShowGroupBorder() const;
傳回值
如果功能區專案包含在顯示通用框線的群組中,則為TRUE;否則為 FALSE。
備註
CMFCRibbonBaseElement::IsShowTooltipOnBottom
指出工具提示是否顯示在功能區專案底下。
virtual BOOL IsShowTooltipOnBottom() const;
傳回值
True 是表示 如果工具提示顯示在功能區專案底下;如果工具提示顯示在指標附近,則為 FALSE。
備註
CMFCRibbonBaseElement::IsTabStop
指出是否可以使用鍵盤選取功能區專案。
virtual BOOL IsTabStop() const;
傳回值
一律會傳回 TRUE。
備註
根據預設,此方法一律會傳回 TRUE。 覆寫此方法,以指出是否可使用鍵盤選取功能區專案。
CMFCRibbonBaseElement::IsTextAlwaysOnRight
指出功能區專案的文字是否顯示在右側。
BOOL IsTextAlwaysOnRight() const;
傳回值
如果功能區專案的文字顯示在右邊,則為TRUE;否則為 FALSE。
備註
CMFCRibbonBaseElement::IsVisible
指出功能區專案目前是否顯示。
BOOL IsVisible() const;
傳回值
如果功能區專案目前已顯示,則為TRUE;否則為 FALSE。
備註
CMFCRibbonBaseElement::IsWholeRowHeight
指出功能區項目的顯示高度是否與包含功能區之功能區面板的顯示高度相同。
virtual BOOL IsWholeRowHeight() const;
傳回值
一律會傳回 FALSE。
備註
根據預設,此方法一律會傳回 FALSE。 覆寫這個方法,指出功能區項目的顯示高度是否與包含它的功能區面板的顯示高度相同。
CMFCRibbonBaseElement::NotifyCommand
將命令通知傳送至功能區專案的父視窗。
BOOL NotifyCommand(BOOL bWithDelay = FALSE);
參數
bWithDelay
[in]TRUE 表示將命令通知新增至父視窗的訊息佇列;FALSE 可立即將訊息傳送至父視窗。
傳回值
如果已傳送訊息,則為TRUE;否則為 FALSE。
備註
CMFCRibbonBaseElement::NotifyHighlightListItem
當使用者醒目提示位於清單中的功能區元素時,通知功能區列的父視窗。
virtual void NotifyHighlightListItem(int nIndex);
參數
nIndex
[in]清單中的功能區專案的索引。
備註
CMFCRibbonBaseElement::OnAddToQAToolbar
將功能區專案新增至指定的快速存取工具列。
virtual BOOL OnAddToQAToolbar(CMFCRibbonQuickAccessToolBar& qat);
參數
qat
[in]快速存取工具列。
傳回值
一律會傳回 TRUE,指出功能區元素已新增至快速存取工具列。
備註
CMFCRibbonBaseElement::OnAfterChangeRect
更新功能區專案的工具提示。
virtual void OnAfterChangeRect(CDC* pDC);
參數
pDC
[in]不使用此參數。
備註
根據預設,此方法會更新功能區元素的工具提示。 覆寫這個方法,以在其顯示矩形變更之後更新功能區專案。
CMFCRibbonBaseElement::OnAutoRepeat
更新功能區元素,以回應持續的用戶輸入。
virtual BOOL OnAutoRepeat();
傳回值
一律會傳回 FALSE。
備註
根據預設,此方法一律會傳回 FALSE。 覆寫此方法以處理持續的用戶輸入。
CMFCRibbonBaseElement::OnCalcTextSize
計算功能區元素的文字大小。
virtual void OnCalcTextSize(CDC* pDC);
參數
pDC
[in]不使用此參數。
備註
根據預設,此方法不會執行任何動作。 覆寫此方法以計算功能區元素的文字大小。
CMFCRibbonBaseElement::OnChangeMenuHighlight
當功能區元素的醒目提示變更位於功能表中時,由架構呼叫。
virtual void OnChangeMenuHighlight(CMFCRibbonPanelMenuBar* pPanelMenuBar
CMFCRibbonBaseElement* pHot);
參數
pPanelMenuBar
[in]不使用此參數。
輻透
[in]不使用此參數。
備註
根據預設,此方法不會執行任何動作。 覆寫此方法,以更新醒目提示變更時位於功能表中的功能區專案。
CMFCRibbonBaseElement::OnDraw
由架構呼叫以繪製功能區項目。
virtual void OnDraw(CDC* pDC) = 0;
參數
pDC
[in]裝置內容的指標。
備註
如果您想要自定義特定功能區專案的繪圖,請覆寫衍生類別中的這個方法。
CMFCRibbonBaseElement::OnDrawKeyTip
由架構呼叫,以繪製功能區專案的索引鍵提示。
virtual void OnDrawKeyTip(
CDC* pDC,
const CRect& rect,
BOOL bIsMenu);
參數
pDC
[in]裝置內容的指標。
rect
[in]索引鍵提示的界限矩形。
bIsMenu
[in]如果按鍵提示適用於快捷功能表按鈕,則為TRUE;否則為 FALSE。
備註
CMFCRibbonBaseElement::OnDrawMenuImage
在繪製功能區專案的功能表影像時,由架構呼叫。
virtual BOOL OnDrawMenuImage(
CDC* pDC,
CRect rect);
參數
pDC
[in]裝置內容的指標。
rect
[in]功能表影像矩形。
傳回值
一律會傳回 TRUE,表示影像已繪製。
備註
CMFCRibbonBaseElement::OnDrawOnList
由架構呼叫,以在命令清單框中繪製功能區專案。
virtual void OnDrawOnList(
CDC* pDC,
CString strText,
int nTextOffset,
CRect rect,
BOOL bIsSelected,
BOOL bHighlighted);
參數
pDC
[in]功能區專案之裝置內容的指標。
strText
[in]顯示文字。
nTextOffset
[in]從清單框左側到顯示文字的距離,以像素為單位。
rect
[in]功能區項目的顯示矩形。
bIsSelected
[in]不使用此參數。
bHighlighted
[in]不使用此參數。
備註
命令清單框會顯示功能區元素,讓用戶能夠自定義快速存取工具列。
CMFCRibbonBaseElement::OnKey
當使用者按下按鍵提示且功能區元素具有焦點時,由架構呼叫。
virtual BOOL OnKey(BOOL bIsMenuKey);
參數
bIsMenuKey
[in]如果按鍵提示顯示快捷功能表,則為TRUE;否則為 FALSE。
傳回值
如果已處理事件,則為TRUE;否則為 FALSE。
備註
CMFCRibbonBaseElement::OnMenuKey
當使用者按下主面板上的功能表按鍵提示時,由架構呼叫。
virtual BOOL OnMenuKey(UINT nUpperChar);
參數
nUpperChar
[in]不使用此參數。
傳回值
一律會傳回 FALSE。
備註
根據預設,此方法一律會傳回 FALSE。 覆寫此方法,以在使用者按下主面板上的功能表按鍵提示時回應。
CMFCRibbonBaseElement::OnProcessKey
當使用者按下快捷鍵時,由架構呼叫。
virtual BOOL OnProcessKey(UINT nChar);
參數
nChar
[in]不使用此參數。
傳回值
一律會傳回 FALSE。
備註
如果您想要功能區項目處理快速鍵,請覆寫此方法。
CMFCRibbonBaseElement::OnRTLChanged
當版面配置變更方向時,由架構呼叫。
virtual void OnRTLChanged(BOOL bIsRTL);
參數
bIsRTL
[in]不使用此參數。
備註
根據預設,此方法不會執行任何動作。 覆寫此方法,以在版面配置變更方向時調整功能區元素。 默認版面配置方向為由左至右。
CMFCRibbonBaseElement::OnSetFocus
當功能區專案接收或失去輸入焦點時,由架構呼叫。
virtual void OnSetFocus(BOOL B);
備註
如果您想要讓應用程式處理功能區元素焦點中的變更,請覆寫衍生類別中的這個方法。
CMFCRibbonBaseElement::OnShow
由架構呼叫以顯示或隱藏功能區專案。
virtual void OnShow(BOOL bShow);
參數
bShow
[in]不使用此參數。
備註
根據預設,此方法不會執行任何動作。 覆寫此方法以顯示或隱藏功能區專案。
CMFCRibbonBaseElement::OnShowPopupMenu
在功能區項目顯示快捷功能表之前,由架構呼叫。
virtual void OnShowPopupMenu();
備註
這個方法會通知功能區列的父視窗,功能區元素會顯示快捷功能表。
CMFCRibbonBaseElement::P ostMenuCommand
關閉功能區專案的快捷功能表,並將關閉訊息傳送至父功能表。
void PostMenuCommand(UINT uiCmdId);
參數
uiCmdId
[in]不使用 參數。
備註
只有在功能區元素位於快捷功能表上時,才會傳送關閉訊息。
CMFCRibbonBaseElement::Redraw
更新功能區項目的顯示。
virtual void Redraw();
備註
此方法會藉由呼叫 CWnd::RedrawWindow 並設定RDW_INVALIDATE、RDW_ERASE和RDW_UPDATENOW旗標,以重新繪製功能區項目的顯示矩形。
CMFCRibbonBaseElement::SetACCData
設定功能區項目的協助工具資料。
virtual BOOL SetACCData(
CWnd* pParent,
CAccessibilityData& data);
參數
pParent
功能區項目的父視窗。
data
功能區項目的協助工具資料。
傳回值
一律會傳回 TRUE。
備註
根據預設,此方法會設定功能區項目的輔助功能數據,且一律會傳回 TRUE。 覆寫此方法以設定協助工具資料並傳回值,以指出成功或失敗。
CMFCRibbonBaseElement::SetCompactMode
設定功能區項目的顯示大小。
virtual void SetCompactMode(BOOL bCompactMode = TRUE);
參數
bCompactMode
[in]TRUE 可減少功能區項目的顯示大小;FALSE 可增加功能區項目的顯示大小。
備註
下表摘要說明此方法的邏輯。
bCompactMode | 目前的功能區專案大小 | 新增功能區專案大小 |
---|---|---|
TRUE | Compact | 沒有變更。 |
TRUE | 中級 | 如果可行,請壓縮。 |
TRUE | 大型 | 如果可行,則為中繼。 |
FALSE | Compact | 如果可行,則為中繼;否則為大型。 |
CMFCRibbonBaseElement::SetData
將數據項與功能區專案產生關聯。
void SetData(DWORD_PTR dwData);
參數
dwData
[in]數據值。
CMFCRibbonBaseElement::SetDefaultMenuLook
將功能區項目設定為顯示為快顯命令。
void SetDefaultMenuLook(BOOL bIsDefaultMenuLook = TRUE);
參數
bIsDefaultMenuLook
[in]TRUE 表示將功能區專案設定為顯示為快顯命令;否則為 FALSE。
備註
CMFCRibbonBaseElement::SetDescription
設定功能區項目的描述。
virtual void SetDescription(LPCTSTR lpszText);
參數
lpszText
[in]功能區專案的描述。
備註
架構會在狀態列或工具提示或功能表按鈕下顯示新的描述。
CMFCRibbonBaseElement::SetID
設定功能區專案的命令標識碼。
virtual void SetID(UINT nID);
參數
nID
[in]命令標識碼。
CMFCRibbonBaseElement::SetInitialMode
設定功能區專案的初始顯示大小。
virtual void SetInitialMode(BOOL bOneRow = FALSE);
參數
bOneRow
[in]TRUE 可限制功能區元素的顯示大小壓縮或中繼;否則為 FALSE。
備註
功能區項目的顯示大小可以是精簡、中繼或大型。
CMFCRibbonBaseElement::SetKeys
設定功能區專案的按鍵提示。
virtual void SetKeys(
LPCTSTR lpszKeys,
LPCTSTR lpszMenuKeys=NULL);
參數
lpszKeys
[in]功能區專案的索引鍵提示。
lpszMenuKeys
[in]功能區元素之快捷功能表的按鍵提示。
CMFCRibbonBaseElement::SetOriginal
設定功能區專案的原始功能區專案。
virtual void SetOriginal(CMFCRibbonBaseElement* pOriginal);
參數
pOriginal
[in]功能區專案的指標。
備註
複製到另一個容器的功能區元素會保留原始功能區專案的指標。
CMFCRibbonBaseElement::SetParentCategory
設定功能區專案的父類別目錄。
virtual void SetParentCategory(CMFCRibbonCategory* pParent);
參數
pParent
[in]功能區類別目錄的指標。
備註
功能區控件中的索引標籤式群組稱為類別。
CMFCRibbonBaseElement::SetParentMenu
設定功能區專案的父功能表容器。
virtual void SetParentMenu(CMFCRibbonPanelMenuBar* pMenuBar);
參數
pMenuBar
[in]父功能表。
備註
CMFCRibbonBaseElement::SetParentRibbonBar
設定功能區專案的父功能區列。
virtual void SetParentRibbonBar(CMFCRibbonBar* pRibbonBar);
參數
pRibbonBar
[in]父功能區列的指標。
備註
CMFCRibbonBaseElement::SetRect
設定功能區項目顯示矩形的維度。
void SetRect(CRect rect);
參數
rect
[in]矩形的維度。
備註
CMFCRibbonBaseElement::SetText
設定功能區專案的文字和按鍵提示。
virtual void SetText(LPCTSTR lpszText);
參數
lpszText
[in]功能區專案的文字和按鍵提示。
備註
若要設定功能區專案的按鍵提示,請將換行符逸出序列附加至 lpszText,後面接著按鍵提示字元。
範例
//Set the text for the ribbon element
SetText(_T("Margins"))
//Set the text and a single-letter keytip
SetText(_T("Margins\nm"))
//Set the text and a multiple-letter keytip
SetText(_T("Line Numbers\nln"))
CMFCRibbonBaseElement::SetTextAlwaysOnRight
設定要顯示在右側的功能區項目文字。
virtual void SetTextAlwaysOnRight(BOOL bSet = TRUE);
參數
bSet
[in]TRUE 表示在右側顯示文字;否則為 FALSE。
備註
CMFCRibbonBaseElement::SetToolTipText
設定功能區專案的工具提示文字。
virtual void SetToolTipText(LPCTSTR lpszText);
參數
lpszText
[in]工具提示文字。
CMFCRibbonBaseElement::SetVisible
設定功能區項目的可見性。
void SetVisible(BOOL bIsVisible);
參數
bIsVisible
[in]TRUE 表示顯示功能區專案;FALSE 可隱藏功能區專案。
備註
CMFCRibbonBaseElement::StretchHorizontally
延展功能區項目的寬度。
virtual void StretchHorizontally();
備註
根據預設,此方法會在偵錯組建中產生判斷提示失敗,因此不應該呼叫。 覆寫此方法以延展功能區項目的寬度。
CMFCRibbonBaseElement::StretchToWholeRow
將功能區項目的顯示高度變更為指定的數據列高度。
virtual BOOL StretchToWholeRow(
CDC* pDC,
int nHeight);
參數
pDC
[in]不使用此參數。
nHeight
[in]數據列的高度。
傳回值
如果已設定顯示高度,則為TRUE;否則為 FALSE。
備註
覆寫此方法,將功能區項目的顯示高度變更為指定的數據列高度。
CMFCRibbonBaseElement::UpdateTooltipInfo
使用功能區元素的命令資源來更新工具提示文字。
virtual void UpdateTooltipInfo();
備註
CMFCRibbonBaseElement::HasFocus
指出父元素是否具有鍵盤焦點。
virtual BOOL HasFocus() const;
傳回值
如果功能區項目為焦點,則為TRUE;否則為 FALSE。