Classe CMFCRibbonCategory
La CMFCRibbonCategory
classe implementa una scheda della barra multifunzione che contiene un gruppo di pannelli della barra multifunzione.
Sintassi
class CMFCRibbonCategory : public CObject
Membri
Costruttori protetti
Nome | Descrizione |
---|---|
CMFCRibbonCategory::CMFCRibbonCategory | Costruttore. |
Metodi pubblici
Osservazioni:
In genere, si crea una categoria della barra multifunzione indirettamente chiamando CMFCRibbonBar::AddCategory, che restituisce un puntatore alla categoria della barra multifunzione appena creata. Aggiungere pannelli alla categoria chiamando CMFCRibbonCategory::AddPanel.
La CMFCRibbonTab
classe disegna le categorie della barra multifunzione. È derivato dalla classe CMFCRibbonBaseElement.
In questo esempio viene illustrato come creare una categoria della barra multifunzione e aggiungervi un pannello.
// Create a new ribbon category and get a pointer to it`
CMFCRibbonCategory* pCategory = m_wndRibbonBar.AddCategory
(_T("&Write"), // Category name
IDB_WRITE, // Category small images (16 x 16)
IDB_WRITE_LARGE); // Category large images (32 x 32)
// Add a panel to the new category
CMFCRibbonPanel* pPanel = pCategory->AddPanel (
_T("Clipboard"), // Panel name
m_PanelIcons.ExtractIcon (0)); // Panel icon
Il diagramma seguente mostra una figura della categoria Home dell'applicazione di esempio RibbonApp.
Gerarchia di ereditarietà
CMFCRibbonCategory
Requisiti
Intestazione: afxribboncategory.h
CMFCRibbonCategory::AddHidden
Aggiunge l'elemento della barra multifunzione specificato alla matrice di elementi della barra multifunzione visualizzati nella finestra di dialogo di personalizzazione.
void AddHidden(CMFCRibbonBaseElement* pElem);
Parametri
pElem
[in] Puntatore a un elemento della barra multifunzione.
Osservazioni:
Gli elementi della barra multifunzione nella finestra di dialogo di personalizzazione sono i comandi che è possibile aggiungere alla barra degli strumenti di accesso rapido.
CMFCRibbonCategory::AddPanel
Crea un pannello della barra multifunzione per la categoria della barra multifunzione.
CMFCRibbonPanel* AddPanel(
LPCTSTR lpszPanelName,
HICON hIcon = 0,
CRuntimeClass* pRTI = NULL);
Parametri
lpszPanelName
[in] Puntatore al nome del nuovo pannello della barra multifunzione.
hIcon
[in] Handle per l'icona predefinita per il nuovo pannello della barra multifunzione.
pRTI
[in] Puntatore alle informazioni sulla classe di runtime per un pannello della barra multifunzione personalizzato.
Valore restituito
Puntatore al nuovo pannello della barra multifunzione se il metodo ha avuto esito positivo; in caso contrario, NULL se il pannello non è stato creato.
Osservazioni:
Se si vuole creare un pannello della barra multifunzione personalizzato, è necessario specificare le relative informazioni sulla classe di runtime in pRTI. La classe del pannello della barra multifunzione personalizzata deve essere derivata dalla CMFCRibbonPanel
classe .
L'icona predefinita per il pannello della barra multifunzione viene visualizzata quando lo spazio disponibile non è sufficiente per visualizzare gli elementi della barra multifunzione.
Esempio
Nell'esempio seguente viene illustrato come usare il AddPanel
metodo nella CMFCRibbonCategory
classe .
// Create "Favorites" panel:
strTemp.LoadString(IDS_RIBBON_FAVORITES);
// CMFCRibbonCategory* pCategoryCustom
CMFCRibbonPanel *pPanelFavorites = pCategoryCustom->AddPanel(strTemp,
m_PanelImages.ExtractIcon(15));
CMFCRibbonCategory::CMFCRibbonCategory
Costruisce e inizializza un oggetto CMFCRibbonCategory .
CMFCRibbonCategory(
CMFCRibbonBar* pParenrRibbonBar,
LPCTSTR lpszName,
UINT uiSmallImagesResID,
UINT uiLargeImagesResID,
CSize sizeSmallImage = CSize(16,
16),
CSize sizeLargeImage = CSize(32,
32));
Parametri
pParenrRibbonBar
[in] Puntatore alla barra multifunzione padre della categoria della barra multifunzione.
lpszName
[in] Nome della categoria della barra multifunzione.
uiSmallImagesResID
[in] ID risorsa dell'elenco di immagini per immagini di piccole dimensioni usate dagli elementi della barra multifunzione nella categoria della barra multifunzione.
uiLargeImagesResID
[in] ID risorsa dell'elenco di immagini per immagini di grandi dimensioni usate dagli elementi della barra multifunzione nella categoria della barra multifunzione.
sizeSmallImage
[in] Dimensioni predefinite delle immagini di piccole dimensioni per gli elementi della barra multifunzione nella categoria della barra multifunzione.
sizeLargeImage
[in] Dimensioni predefinite delle immagini di grandi dimensioni per gli elementi della barra multifunzione nella categoria della barra multifunzione.
CMFCRibbonCategory::CopyFrom
Copia lo stato dell'oggetto CMFCRibbonCategory specificato nell'oggetto CMFCRibbonCategory corrente.
virtual void CopyFrom(CMFCRibbonCategory& src);
Parametri
src
[in] Oggetto di origine CMFCRibbonCategory
.
Osservazioni:
CMFCRibbonCategory::FindByData
Recupera l'elemento della barra multifunzione associato ai dati specificati.
CMFCRibbonBaseElement* FindByData(
DWORD_PTR dwData,
BOOL bVisibleOnly = TRUE) const;
Parametri
dwData
[in] Dati associati a un elemento della barra multifunzione.
bVisibleOnly
[in] TRUE per includere gli elementi della barra multifunzione ad accesso rapido nella ricerca; FALSE per escludere gli elementi della barra multifunzione di accesso rapido nella ricerca.
Valore restituito
Puntatore a un elemento della barra multifunzione se il metodo ha avuto esito positivo; in caso contrario NULL.
Osservazioni:
CMFCRibbonCategory::FindByID
Recupera l'elemento della barra multifunzione associato all'ID di comando specificato.
CMFCRibbonBaseElement* FindByID(
UINT uiCmdID,
BOOL bVisibleOnly = TRUE) const;
Parametri
uiCmdID
[in] ID comando associato a un elemento della barra multifunzione.
bVisibleOnly
[in] TRUE per includere gli elementi della barra multifunzione ad accesso rapido nella ricerca; FALSE per escludere gli elementi della barra multifunzione di accesso rapido nella ricerca.
Valore restituito
Puntatore a un elemento della barra multifunzione se il metodo ha avuto esito positivo; in caso contrario NULL.
Osservazioni:
CMFCRibbonCategory::FindPanelWithElem
Recupera il pannello della barra multifunzione che contiene l'elemento della barra multifunzione specificato.
CMFCRibbonPanel* FindPanelWithElem(const CMFCRibbonBaseElement* pElement);
Parametri
pElement
[in] Puntatore a un elemento della barra multifunzione.
Valore restituito
Puntatore a un pannello della barra multifunzione se il metodo ha avuto esito positivo; in caso contrario NULL.
Osservazioni:
CMFCRibbonCategory::GetContextID
Recupera l'ID di contesto della categoria della barra multifunzione.
UINT GetContextID() const;
Valore restituito
ID contesto della categoria della barra multifunzione.
Osservazioni:
L'ID contesto è 0 se la categoria della barra multifunzione non è una categoria della barra multifunzione di contesto.
CMFCRibbonCategory::GetData
Recupera i dati definiti dall'utente associati alla categoria della barra multifunzione.
DWORD_PTR GetData() const;
Valore restituito
Dati definiti dall'utente associati alla categoria della barra multifunzione.
CMFCRibbonCategory::GetDroppedDown
Recupera un puntatore all'elemento della barra multifunzione in cui è attualmente visualizzato il menu a comparsa.
CMFCRibbonBaseElement* GetDroppedDown();
Valore restituito
Puntatore a un elemento della barra multifunzione se il metodo ha avuto esito positivo; in caso contrario NULL.
Osservazioni:
CMFCRibbonCategory::GetElements
Recupera tutti gli elementi della barra multifunzione nella categoria della barra multifunzione.
void GetElements(
CArray <CMFCRibbonBaseElement*, CMFCRibbonBaseElement*>& arElements);
Parametri
arElements
[in, out] Riferimento a un oggetto CArray di elementi della barra multifunzione.
Osservazioni:
Gli elementi della barra multifunzione progettati per l'uso sulla barra degli strumenti di accesso rapido sono inclusi nella matrice.
CMFCRibbonCategory::GetElementsByID
Recupera tutti gli elementi della barra multifunzione associati all'ID del comando specificato.
void GetElementsByID(
UINT uiCmdID,
CArray <CMFCRibbonBaseElement*, CMFCRibbonBaseElement*>& arElements);
Parametri
uiCmdID
[in] ID comando associato a un elemento della barra multifunzione.
arElements
[in, out] Riferimento a un oggetto CArray di elementi della barra multifunzione.
Osservazioni:
Gli elementi della barra multifunzione progettati per l'uso sulla barra degli strumenti di accesso rapido sono inclusi nella matrice.
CMFCRibbonCategory::GetFirstVisibleElement
Recupera il primo elemento visibile appartenente alla categoria della barra multifunzione.
CMFCRibbonBaseElement* GetFirstVisibleElement() const;
Valore restituito
Puntatore al primo elemento visibile; può essere NULL se la categoria non dispone di elementi visibili.
Osservazioni:
CMFCRibbonCategory::GetFocused
Restituisce un elemento con stato attivo.
CMFCRibbonBaseElement* GetFocused();
Valore restituito
Puntatore a un elemento con stato attivo o NULL.
Osservazioni:
CMFCRibbonCategory::GetHighlighted
Restituisce un elemento evidenziato.
CMFCRibbonBaseElement* GetHighlighted();
Valore restituito
Puntatore a un elemento evidenziato o NULL se non sono evidenziati elementi.
Osservazioni:
CMFCRibbonCategory::GetImageCount
Recupera il numero di immagini nell'elenco di immagini specificato contenuto nella categoria della barra multifunzione.
int GetImageCount(BOOL bIsLargeImage) const;
Parametri
bIsLargeImage
[in] TRUE per il numero di immagini nell'elenco di immagini di grandi dimensioni; FALSE per il numero di immagini nell'elenco di immagini di piccole dimensioni.
Valore restituito
Numero di immagini nell'elenco di immagini specificato.
Osservazioni:
CMFCRibbonCategory::GetImageSize
Recupera le dimensioni di un'immagine nell'elenco di immagini specificato contenuto nella categoria della barra multifunzione.
CSize GetImageSize(BOOL bIsLargeImage) const;
Parametri
bIsLargeImage
[in] TRUE per le dimensioni delle immagini di grandi dimensioni; FALSE per le dimensioni delle immagini di piccole dimensioni.
Valore restituito
Dimensioni di un'immagine nell'elenco di immagini specificato.
Osservazioni:
Le dimensioni recuperate includono il fattore di scala globale dell'immagine.
CMFCRibbonCategory::GetItemIDsList
Recupera gli ID comando per gli elementi della barra multifunzione contenuti nella categoria della barra multifunzione.
void GetItemIDsList(
CList<UINT, UINT>& lstItems,
BOOL bHiddenOnly = FALSE) const;
Parametri
lstItems
[out] Elenco di ID comando per gli elementi della barra multifunzione nella categoria della barra multifunzione.
bHiddenOnly
[in] TRUE per escludere gli elementi della barra multifunzione visualizzati nei pannelli della barra multifunzione nella categoria della barra multifunzione; FALSE per includere tutti gli elementi della barra multifunzione nella categoria della barra multifunzione.
Osservazioni:
CMFCRibbonCategory::GetLargeImages
Recupera l'elenco di immagini di grandi dimensioni contenute nella categoria della barra multifunzione.
CMFCToolBarImages& GetLargeImages();
Valore restituito
Elenco di immagini di grandi dimensioni contenute nella categoria della barra multifunzione.
CMFCRibbonCategory::GetLastVisibleElement
Recupera l'ultimo elemento visibile appartenente alla categoria della barra multifunzione.
CMFCRibbonBaseElement* GetLastVisibleElement() const;
Valore restituito
Puntatore all'ultimo elemento visibile; può essere NULL se la categoria non dispone di elementi visibili.
Osservazioni:
CMFCRibbonCategory::GetMaxHeight
Recupera l'altezza massima dei pannelli della barra multifunzione contenuti nella categoria della barra multifunzione.
int GetMaxHeight(CDC* pDC);
Parametri
pDC
[in] Puntatore a un contesto di dispositivo per i pannelli della barra multifunzione.
Valore restituito
Altezza massima dei pannelli della barra multifunzione contenuti nella categoria della barra multifunzione.
Osservazioni:
Il valore recuperato include l'altezza dei margini superiore e inferiore per i pannelli della barra multifunzione.
CMFCRibbonCategory::GetName
Recupera il nome della categoria della barra multifunzione.
LPCTSTR GetName() const;
Valore restituito
Nome della categoria della barra multifunzione.
Osservazioni:
CMFCRibbonCategory::GetPanel
Restituisce un puntatore al pannello della barra multifunzione che si trova in corrispondenza dell'indice specificato.
CMFCRibbonPanel* GetPanel(int nIndex);
Parametri
nIndex
[in] Indice in base zero di un pannello della barra multifunzione.
Valore restituito
Puntatore al pannello della barra multifunzione che si trova in corrispondenza dell'indice specificato.
Osservazioni:
Viene generata un'eccezione se nIndex non è compreso nell'intervallo.
CMFCRibbonCategory::GetPanelCount
Restituisce il numero di pannelli della barra multifunzione nella categoria della barra multifunzione.
int GetPanelCount() const;
Valore restituito
Numero di pannelli della barra multifunzione nella categoria della barra multifunzione.
CMFCRibbonCategory::GetPanelFromPoint
Recupera un puntatore a un pannello della barra multifunzione se il punto specificato si trova in esso.
CMFCRibbonPanel* GetPanelFromPoint(CPoint point) const;
Parametri
point
[in] Coordinate x e y del puntatore, rispetto all'angolo superiore sinistro della finestra.
Valore restituito
Puntatore a un pannello della barra multifunzione se il metodo ha avuto esito positivo; in caso contrario NULL.
Osservazioni:
Vengono testati solo i pannelli della barra multifunzione contenuti nella categoria della barra multifunzione.
CMFCRibbonCategory::GetPanelIndex
Recupera l'indice in base zero del pannello della barra multifunzione specificato.
int GetPanelIndex(const CMFCRibbonPanel* pPanel) const;
Parametri
pPanel
[in] Puntatore a un pannello della barra multifunzione.
Valore restituito
Indice in base zero del pannello della barra multifunzione specificato se il metodo ha avuto esito positivo; in caso contrario -1.
Osservazioni:
Vengono cercati solo i pannelli della barra multifunzione contenuti nella categoria della barra multifunzione.
CMFCRibbonCategory::GetParentButton
Recupera l'elemento della barra multifunzione padre della categoria della barra multifunzione.
CMFCRibbonBaseElement* GetParentButton() const;
Valore restituito
Restituisce un puntatore all'elemento della barra multifunzione padre oppure NULL se non è presente alcun elemento padre.
Osservazioni:
CMFCRibbonCategory::GetParentMenuBar
Restituisce un puntatore alla barra dei menu padre dell'oggetto CMFCRibbonCategory
.
CMFCRibbonPanelMenuBar* GetParentMenuBar() const;
Valore restituito
Restituisce il contenuto del m_pParentMenuBar
membro protetto.
Osservazioni:
CMFCRibbonCategory::GetParentRibbonBar
Recupera la barra multifunzione padre per la categoria della barra multifunzione.
CMFCRibbonBar* GetParentRibbonBar() const;
Valore restituito
Puntatore alla barra multifunzione padre per la categoria della barra multifunzione.
Osservazioni:
CMFCRibbonCategory::GetRect
Recupera il rettangolo di visualizzazione per la categoria della barra multifunzione.
CRect GetRect() const;
Valore restituito
Rettangolo di visualizzazione per la categoria della barra multifunzione.
Osservazioni:
Il rettangolo di visualizzazione per la categoria della barra multifunzione non include la scheda categoria.
CMFCRibbonCategory::GetSmallImages
Recupera l'elenco di piccole immagini contenute nella categoria della barra multifunzione.
CMFCToolBarImages& GetSmallImages();
Valore restituito
Elenco di immagini di piccole dimensioni contenute nella categoria della barra multifunzione.
CMFCRibbonCategory::GetTabColor
Restituisce il colore corrente della scheda categoria della barra multifunzione.
AFX_RibbonCategoryColor GetTabColor() const;
Valore restituito
Colore corrente della scheda categoria della barra multifunzione.
Osservazioni:
Il valore restituito può essere uno dei valori enumerati seguenti:
AFX_CategoryColor_Red
AFX_CategoryColor_Orange
AFX_CategoryColor_Yellow
AFX_CategoryColor_Green
AFX_CategoryColor_Blue
AFX_CategoryColor_Indigo
AFX_CategoryColor_Violet
CMFCRibbonCategory::GetTabRect
Recupera il rettangolo di visualizzazione per la scheda categoria della barra multifunzione.
CRect GetTabRect() const;
Valore restituito
Rettangolo di visualizzazione per la scheda categoria della barra multifunzione.
Osservazioni:
CMFCRibbonCategory::GetTextTopLine
Recupera la posizione verticale del testo sui pulsanti della barra multifunzione nella categoria della barra multifunzione che visualizza immagini di grandi dimensioni.
int GetTextTopLine() const;
Valore restituito
Posizione verticale del testo, in pixel, sui pulsanti della barra multifunzione che visualizzano immagini di grandi dimensioni.
Osservazioni:
CMFCRibbonCategory::GetVisibleElements
Recupera tutti gli elementi visibili che appartengono alla categoria della barra multifunzione.
void GetVisibleElements(
CArray <CMFCRibbonBaseElement*,
CMFCRibbonBaseElement*>& arElements);
Parametri
arElements
Matrice di tutti gli elementi visibili.
Osservazioni:
CMFCRibbonCategory::HighlightPanel
Evidenzia il pannello della barra multifunzione specificato.
CMFCRibbonPanel* HighlightPanel(
CMFCRibbonPanel* pHLPanel,
CPoint point);
Parametri
pHLPanel
[in] Puntatore al pannello della barra multifunzione da evidenziare.
point
[in] Coordinate x e y del puntatore, rispetto all'angolo superiore sinistro della finestra.
Valore restituito
Puntatore al pannello della barra multifunzione evidenziato in precedenza; in caso contrario, NULL se non viene evidenziato alcun pannello della barra multifunzione quando questo metodo viene richiamato.
Osservazioni:
Per altre informazioni sull'evidenziazione di un pannello della barra multifunzione, vedere CMFCRibbonPanel::Highlight.
CMFCRibbonCategory::HitTest
Recupera un puntatore a un elemento della barra multifunzione se il punto specificato si trova in esso.
CMFCRibbonBaseElement* HitTest(
CPoint point,
BOOL bCheckPanelCaption = FALSE) const;
Parametri
point
[in] Coordinate x e y del puntatore del mouse rispetto all'angolo superiore sinistro della finestra.
bCheckPanelCaption
[in] TRUE per testare la didascalia del pannello della barra multifunzione; FALSE per escludere la didascalia del pannello della barra multifunzione.
Valore restituito
Puntatore a un elemento della barra multifunzione se il metodo ha avuto esito positivo; in caso contrario NULL.
Osservazioni:
Vengono testati solo gli elementi della barra multifunzione contenuti nella categoria della barra multifunzione.
CMFCRibbonCategory::HitTestEx
Recupera l'indice in base zero di un elemento della barra multifunzione se il punto specificato si trova in esso.
int HitTestEx(CPoint point) const;
Parametri
point
[in] Coordinate x e y del puntatore del mouse rispetto all'angolo superiore sinistro della finestra.
Valore restituito
Indice in base zero di un elemento della barra multifunzione se il metodo ha avuto esito positivo; in caso contrario -1.
Osservazioni:
Vengono testati solo gli elementi della barra multifunzione contenuti nella categoria della barra multifunzione.
CMFCRibbonCategory::HitTestScrollButtons
Se un punto rientra all'interno del pulsante di scorrimento sinistro o destro di una categoria della barra multifunzione, restituisce un puntatore a tale pulsante.
CMFCRibbonBaseElement* HitTestScrollButtons(CPoint point) const;
Parametri
point
[in] Punto da testare.
Valore restituito
Se il punto rientra nel rettangolo di delimitazione del pulsante di scorrimento sinistro o destro della categoria della barra multifunzione, restituisce un puntatore a tale pulsante o in caso contrario restituisce NULL.
Osservazioni:
CMFCRibbonCategory::IsActive
Indica se la categoria della barra multifunzione è la categoria attiva sulla barra multifunzione.
BOOL IsActive() const;
Valore restituito
TRUE se la categoria della barra multifunzione è la categoria attiva; in caso contrario FALSE.
Osservazioni:
La categoria della barra multifunzione attiva visualizza i pannelli della barra multifunzione.
CMFCRibbonCategory::IsVisible
Indica se la categoria della barra multifunzione è visibile.
BOOL IsVisible() const;
Valore restituito
TRUE se la categoria della barra multifunzione è visibile; in caso contrario FALSE.
Osservazioni:
Le categorie della barra multifunzione visibili visualizzano una scheda categoria.
CMFCRibbonCategory::IsWindows7Look
Indica se la barra multifunzione padre ha un aspetto di Windows 7 (piccolo pulsante di applicazione rettangolare).
BOOL IsWindows7Look() const;
Valore restituito
TRUE se la barra multifunzione padre ha l'aspetto di Windows 7; in caso contrario FALSE.
Osservazioni:
CMFCRibbonCategory::NotifyControlCommand
Recapita un messaggio di comando WM_NOTIFY a tutti gli CMFCRibbonPanel
elementi in CMFCRibbonCategory
finché il messaggio non viene gestito.
virtual BOOL NotifyControlCommand(
BOOL bAccelerator,
int nNotifyCode,
WPARAM wParam,
LPARAM lParam);
Parametri
bAccelerator
[in] TRUE se questo comando ha avuto origine da un acceleratore o FALSE in caso contrario.
nNotifyCode
[in] Codice di notifica.
wParam
[in] Campo WPARAM del messaggio.
lParam
[in] Campo LPARAM del messaggio.
Valore restituito
Restituisce TRUE se il messaggio è stato gestito o FALSE in caso contrario.
Osservazioni:
CMFCRibbonCategory::OnCancelMode
Richiama la modalità di annullamento in tutti gli CMFCRibbonPanel
elementi dell'oggetto CMFCRibbonCategory
.
virtual void OnCancelMode();
Osservazioni:
CMFCRibbonCategory::OnDraw
Chiamato dal framework per disegnare la categoria della barra multifunzione.
virtual void OnDraw(CDC* pDC);
Parametri
pDC
[in] Puntatore a un contesto di dispositivo per la categoria della barra multifunzione.
Osservazioni:
CMFCRibbonCategory::OnDrawImage
Chiamato dal framework per disegnare l'immagine specificata nella categoria della barra multifunzione.
virtual BOOL OnDrawImage(
CDC* pDC,
CRect rect,
CMFCRibbonBaseElement* pElement,
BOOL bIsLargeImage,
BOOL nImageIndex,
BOOL bCenter);
Parametri
pDC
[in] Puntatore a un contesto di dispositivo per l'immagine.
rect
[in] Rettangolo di visualizzazione per l'immagine.
pElement
[in] Puntatore all'elemento della barra multifunzione che contiene l'immagine.
bIsLargeImage
[in] TRUE se l'immagine è di grandi dimensioni; FALSE se l'immagine è di piccole dimensioni.
nImageIndex
[in] Indice in base zero dell'immagine nella matrice di immagini contenuta nella categoria della barra multifunzione.
bCenter
[in] TRUE per centrare l'immagine nel rettangolo di visualizzazione; FALSE per disegnare l'immagine nell'angolo superiore sinistro del rettangolo di visualizzazione.
Valore restituito
TRUE se il metodo ha avuto esito positivo; in caso contrario FALSE.
Osservazioni:
CMFCRibbonCategory::OnDrawMenuBorder
Chiamato dal framework per disegnare il bordo di un menu popup.
virtual void OnDrawMenuBorder(
CDC* pDC,
CMFCRibbonPanelMenuBar* pMenuBar);
Parametri
pDC
[in] Questo parametro non viene usato.
pMenuBar
[in] Questo parametro non viene usato.
Osservazioni:
Per impostazione predefinita, questo metodo non esegue alcuna operazione. Eseguire l'override di questo metodo per disegnare il bordo di un menu popup.
CMFCRibbonCategory::OnKey
Chiamato dal framework quando un utente preme un pulsante di tastiera.
virtual BOOL OnKey(UINT nChar);
Parametri
nChar
Codice del tasto virtuale per il tasto premuto da un utente.
Osservazioni:
CMFCRibbonCategory::OnLButtonDown
Chiamato dal framework per recuperare l'elemento della barra multifunzione sotto il punto specificato quando l'utente preme il pulsante sinistro del mouse.
virtual CMFCRibbonBaseElement* OnLButtonDown(CPoint point);
Parametri
point
[in] Coordinate x e y del puntatore del mouse rispetto all'angolo superiore sinistro della finestra.
Valore restituito
Puntatore a un elemento della barra multifunzione se il metodo ha avuto esito positivo; in caso contrario NULL.
Osservazioni:
CMFCRibbonCategory::OnLButtonUp
Chiamato dal framework quando l'utente rilascia il pulsante sinistro del mouse e il puntatore si trova sulla categoria della barra multifunzione.
virtual void OnLButtonUp(CPoint point);
Parametri
point
[in] Coordinate x e y del puntatore, rispetto all'angolo superiore sinistro della finestra.
Osservazioni:
CMFCRibbonCategory::OnMouseMove
Chiamato dal framework quando il puntatore si sposta sulla barra multifunzione per aggiornare la visualizzazione della categoria della barra multifunzione.
virtual void OnMouseMove(CPoint point);
Parametri
point
[in] Coordinate x e y del puntatore, rispetto all'angolo superiore sinistro della finestra.
Osservazioni:
CMFCRibbonCategory::OnRTLChanged
Chiamato dal framework quando il layout cambia direzione.
virtual void OnRTLChanged(BOOL bIsRTL);
Parametri
bIsRTL
[in] TRUE se il layout è da destra a sinistra; FALSE se il layout è da sinistra a destra.
Osservazioni:
Questo metodo regola il layout di tutti i pannelli della barra multifunzione e gli elementi della barra multifunzione contenuti nella categoria della barra multifunzione.
CMFCRibbonCategory::OnScrollHorz
Scorre la categoria della barra multifunzione nella direzione orizzontale.
virtual BOOL OnScrollHorz(
BOOL bScrollLeft,
int nScrollOffset = 0);
Parametri
bScrollLeft
[in] TRUE per scorrere verso sinistra; FALSE per scorrere verso destra.
nScrollOffset
[in] Distanza di scorrimento in pixel.
Valore restituito
TRUE se la categoria della barra multifunzione è stata spostata in direzione orizzontale; in caso contrario FALSE.
Osservazioni:
CMFCRibbonCategory::OnUpdateCmdUI
Chiama la OnUpdateCmdUI
funzione membro in ognuno degli CMFCRibbonPanel
elementi di CMFCRibbonCategory
per abilitare o disabilitare gli elementi dell'interfaccia utente in essi contenuti.
virtual void OnUpdateCmdUI(
CMFCRibbonCmdUI* pCmdUI,
CFrameWnd* pTarget,
BOOL bDisableIfNoHndler);
Parametri
pCmdUI
[in] Puntatore all'oggetto CMFCRibbonCmdUI
che specifica quali elementi dell'interfaccia utente devono essere abilitati e che devono essere disabilitati.
pTarget
[in] Puntatore alla finestra che controlla l'abilitazione o la disabilitazione degli elementi dell'interfaccia utente.
bDisableIfNoHndler
[in] TRUE per disabilitare l'elemento dell'interfaccia utente se non è definito alcun gestore in una mappa dei messaggi; in caso contrario, FALSE.
Osservazioni:
CMFCRibbonCategory::RecalcLayout
Regola il layout di tutti i controlli nella categoria della barra multifunzione.
virtual void RecalcLayout(CDC* pDC);
Parametri
pDC
[in] Puntatore a un contesto di dispositivo per la categoria della barra multifunzione.
Osservazioni:
CMFCRibbonCategory::RemovePanel
Rimuove un pannello della barra multifunzione dalla categoria della barra multifunzione.
BOOL RemovePanel(
int nIndex,
BOOL bDelete = TRUE);
Parametri
nIndex
[in] Numero di indice del pannello da rimuovere. Ottenuto chiamando il metodo CMFCRibbonCategory::GetPanelIndex .
bDelete
[in] TRUE per eliminare l'oggetto pannello dalla memoria; FALSE per rimuovere l'oggetto pannello senza eliminarlo.
Valore restituito
TRUE se il metodo ha avuto esito positivo; in caso contrario, FALSE.
CMFCRibbonCategory::ReposPanels
Regola il layout di tutti i controlli sui pannelli della barra multifunzione contenuti nella categoria della barra multifunzione.
virtual void ReposPanels(CDC* pDC);
Parametri
pDC
[in] Puntatore a un contesto di dispositivo per i pannelli della barra multifunzione contenuti nella categoria della barra multifunzione.
Osservazioni:
CMFCRibbonCategory::SetCollapseOrder
Definisce l'ordine di compressione dei pannelli della barra multifunzione della categoria della barra multifunzione.
void SetCollapseOrder(const CArray<int,int>& arCollapseOrder);
Parametri
arCollapseOrder
[in] Specifica l'ordine di compressione. La matrice contiene indici in base zero dei pannelli della barra multifunzione.
Osservazioni:
La libreria definisce l'ordine di compressione. Tuttavia, è possibile personalizzare questo comportamento fornendo alla categoria l'elenco di indici che specifica l'ordine di compressione.
Quando la categoria rileva che deve comprimere un pannello della barra multifunzione, cerca l'elemento successivo nell'elenco specificato. Se l'elenco è vuoto o non sono stati specificati elementi sufficienti, la categoria usa l'algoritmo interno.
Ad esempio, la categoria ha tre pannelli della barra multifunzione e può essere compressa più volte fino a quando tutti i pannelli non si trovano nello stato completamente compresso. È possibile impostare l'ordine di compressione seguente: 0, 0, 2, 2. In questo caso, la categoria comprimerà il pannello 0 due volte, il pannello 2 volte. Il pannello con indice pari a 1 rimane invariato.
Esempio
Nell'esempio seguente viene illustrato come usare il SetCollapseOrder
metodo nella CMFCRibbonCategory
classe . Nell'esempio viene illustrato come costruire una matrice per l'ordine di compressione e come impostare l'ordine di compressione sulla categoria della barra multifunzione.
CArray<int, int> arCollapseOrder;
arCollapseOrder.Add(0);
arCollapseOrder.Add(1);
arCollapseOrder.Add(2);
// CMFCRibbonCategory* pCategoryHome
pCategoryHome->SetCollapseOrder(arCollapseOrder);
CMFCRibbonCategory::SetData
Imposta i dati definiti dall'utente da associare alla categoria della barra multifunzione.
void SetData(DWORD_PTR dwData);
Parametri
dwData
[in] Dati definiti dall'utente.
CMFCRibbonCategory::SetKeys
Assegna una descrizione comando alla categoria della barra multifunzione.
void SetKeys(LPCTSTR lpszKeys);
Parametri
lpszKeys
[in] Testo del suggerimento per il tasto.
Osservazioni:
I suggerimenti per i tasti vengono visualizzati quando l'utente preme alt o F10.
CMFCRibbonCategory::SetName
Assegna un nome e una descrizione comando alla categoria della barra multifunzione.
void SetName(LPCTSTR lpszName);
Parametri
lpszName
[in] Nome e descrizione della barra multifunzione.
Osservazioni:
Per impostare il suggerimento per la categoria della barra multifunzione, aggiungere una sequenza di escape di nuova riga seguita dai caratteri della descrizione chiave a lpszName.
CMFCRibbonCategory::SetTabColor
Imposta il colore della categoria della barra multifunzione.
void SetTabColor(AFX_RibbonCategoryColor color);
Parametri
color
[in] Specifica il nuovo colore della categoria della barra multifunzione.
Osservazioni:
Il colore può essere uno dei valori seguenti:
AFX_CategoryColor_None
AFX_CategoryColor_Red
AFX_CategoryColor_Orange
AFX_CategoryColor_Yellow
AFX_CategoryColor_Green
AFX_CategoryColor_Blue
AFX_CategoryColor_Indigo
AFX_CategoryColor_Violet