Classe CMFCMenuBar
Barra dei menu che implementa l'ancoraggio. Per altri dettagli, vedere il codice sorgente che si trova nella cartella VC\atlmfc\src\mfc dell'installazione di Visual Studio.
Sintassi
class CMFCMenuBar : public CMFCToolbar
Membri
Metodi pubblici
Nome | Descrizione |
---|---|
CMFCMenuBar::AdjustLocations | Esegue l'override di CMFCToolBar::AdjustLocations . |
CMFCMenuBar::AllowChangeTextLabels | Specifica se le etichette di testo possono essere visualizzate nelle immagini nei pulsanti della barra degli strumenti. (sostituzioni )CMFCToolBar::AllowChangeTextLabels. |
CMFCMenuBar::AllowShowOnPaneMenu | Esegue l'override di CPane::AllowShowOnPaneMenu . |
CMFCMenuBar::CalcFixedLayout | Calcola le dimensioni orizzontali della barra degli strumenti. (sostituzioni )CMFCToolBar::CalcFixedLayout. |
CMFCMenuBar::CalcLayout | Esegue l'override di CMFCToolBar::CalcLayout . |
CMFCMenuBar::CalcMaxButtonHeight | Calcola l'altezza massima dei pulsanti nella barra degli strumenti. (sostituzioni )CMFCToolBar::CalcMaxButtonHeight. |
CMFCMenuBar::CanBeClosed | Specifica se un utente può chiudere la barra degli strumenti. (sostituzioni )CMFCToolBar::CanBeClosed. |
CMFCMenuBar::CanBeRestored | Determina se il sistema può ripristinare uno stato originale di una barra degli strumenti dopo la personalizzazione. (sostituzioni )CMFCToolBar::CanBeRestored. |
CMFCMenuBar::Create | Crea un controllo menu e lo collega a un CMFCMenuBar oggetto . |
CMFCMenuBar::CreateEx | Crea un CMFCMenuBar oggetto con opzioni di stile aggiuntive. |
CMFCMenuBar::CreateFromMenu | Inizializza un oggetto CMFCMenuBar . Accetta un parametro HMENU che funge da modello per un oggetto popolato CMFCMenuBar . |
CMFCMenuBar::EnableHelpCombobox | Abilita una casella combinata della Guida che si trova sul lato destro della barra dei menu. |
CMFCMenuBar::EnableMenuShadows | Specifica se visualizzare le ombreggiature per i menu a comparsa. |
CMFCMenuBar::GetAvailableExpandSize | (sostituzioni )CPane::GetAvailableExpandSize. |
CMFCMenuBar::GetColumnWidth | Restituisce la larghezza dei pulsanti della barra degli strumenti. (sostituzioni )CMFCToolBar::GetColumnWidth. |
CMFCMenuBar::GetDefaultMenu | Restituisce un handle al menu originale nel file di risorse. |
CMFCMenuBar::GetDefaultMenuResId | Restituisce l'identificatore della risorsa per il menu originale nel file di risorse. |
CMFCMenuBar::GetFloatPopupDirection | |
CMFCMenuBar::GetForceDownArrows | |
CMFCMenuBar::GetHelpCombobox | Restituisce un puntatore alla casella combinata ? |
CMFCMenuBar::GetHMenu | Restituisce l'handle al menu associato all'oggetto CMFCMenuBar . |
CMFCMenuBar::GetMenuFont | Restituisce il tipo di carattere globale corrente per gli oggetti menu. |
CMFCMenuBar::GetMenuItem | Restituisce il pulsante della barra degli strumenti associato all'indice dell'elemento specificato. |
CMFCMenuBar::GetRowHeight | Restituisce l'altezza dei pulsanti della barra degli strumenti. (sostituzioni )CMFCToolBar::GetRowHeight. |
CMFCMenuBar::GetSystemButton | |
CMFCMenuBar::GetSystemButtonsCount | |
CMFCMenuBar::GetSystemMenu | |
CMFCMenuBar::HighlightDisabledItems | Indica se le voci di menu disabilitate sono evidenziate. |
CMFCMenuBar::IsButtonExtraSizeAvailable | Determina se la barra degli strumenti può visualizzare pulsanti con bordi estesi. (sostituzioni )CMFCToolBar::IsButtonExtraSizeAvailable. |
CMFCMenuBar::IsHighlightDisabledItems | Indica se gli elementi disabilitati sono evidenziati. |
CMFCMenuBar::IsMenuShadows | Indica se le ombreggiature vengono disegnate per i menu a comparsa. |
CMFCMenuBar::IsRecentlyUsedMenus | Indica se i comandi di menu usati di recente vengono visualizzati sulla barra dei menu. |
CMFCMenuBar::IsShowAllCommands | Indica se i menu a comparsa visualizzano tutti i comandi. |
CMFCMenuBar::IsShowAllCommandsDelay | Indica se i menu visualizzano tutti i comandi dopo un breve ritardo. |
CMFCMenuBar::LoadState | Carica lo stato dell'oggetto CMFCMenuBar dal Registro di sistema. |
CMFCMenuBar::OnChangeHot | Chiamato dal framework quando un utente seleziona un pulsante sulla barra degli strumenti. (sostituzioni )CMFCToolBar::OnChangeHot.) |
CMFCMenuBar::OnDefaultMenuLoaded | Chiamato dal framework quando una finestra cornice carica il menu predefinito dal file di risorse. |
CMFCMenuBar::OnSendCommand | Esegue l'override di CMFCToolBar::OnSendCommand . |
CMFCMenuBar::OnSetDefaultButtonText | Chiamato dal framework quando un menu è in modalità di personalizzazione e l'utente modifica il testo di una voce di menu. |
CMFCMenuBar::OnToolHitTest | Esegue l'override di CMFCToolBar::OnToolHitTest . |
CMFCMenuBar::P reTranslateMessage | Esegue l'override di CMFCToolBar::PreTranslateMessage . |
CMFCMenuBar::RestoreOriginalstate | Chiamato dal framework quando un menu è in modalità di personalizzazione e l'utente seleziona Reimposta per una barra dei menu. |
CMFCMenuBar::SaveState | Salva lo stato dell'oggetto CMFCMenuBar nel Registro di sistema. |
CMFCMenuBar::SetDefaultMenuResId | Imposta il menu originale nel file di risorse. |
CMFCMenuBar::SetForceDownArrows | |
CMFCMenuBar::SetMaximizeMode | Chiamato dal framework quando una finestra figlio MDI cambia la modalità di visualizzazione. Se la finestra figlio MDI è appena ingrandita o non è più ingrandita, questo metodo aggiorna la barra dei menu. |
CMFCMenuBar::SetMenuButtonRTC | Imposta le informazioni sulla classe di runtime generate quando l'utente crea dinamicamente pulsanti di menu. |
CMFCMenuBar::SetMenuFont | Imposta il tipo di carattere per tutti i menu nell'applicazione. |
CMFCMenuBar::SetRecentlyUsedMenus | Specifica se una barra dei menu visualizza i comandi di menu usati di recente. |
CMFCMenuBar::SetShowAllCommands | Specifica se la barra dei menu mostra tutti i comandi. |
Osservazioni:
La CMFCMenuBar
classe è una barra dei menu che implementa la funzionalità di ancoraggio. È simile a una barra degli strumenti, anche se non può essere chiusa, ma viene sempre visualizzata.
CMFCMenuBar
supporta l'opzione di visualizzazione degli oggetti voce di menu usati di recente. Se questa opzione è abilitata, CMFCMenuBar
visualizza solo un subset dei comandi disponibili alla prima visualizzazione. Successivamente, i comandi usati di recente vengono visualizzati insieme al subset originale di comandi. Inoltre, l'utente può sempre espandere il menu per visualizzare tutti i comandi disponibili. Pertanto, ogni comando disponibile è configurato per la visualizzazione costante o per la visualizzazione solo se è stato selezionato di recente.
Per usare un CMFCMenuBar
oggetto , incorporarlo nell'oggetto cornice della finestra principale. Quando si elabora il WM_CREATE
messaggio, chiamare CMFCMenuBar::Create
o CMFCMenuBar::CreateEx
. Indipendentemente dalla funzione di creazione usata, passare un puntatore alla finestra cornice principale. Abilitare quindi l'ancoraggio chiamando CFrameWndEx::EnableDocking. Ancorare questo menu chiamando CFrameWndEx::D ockPane.
Esempio
L'esempio seguente illustra come usare i vari metodi nella classe CMFCMenuBar
. L'esempio mostra come impostare lo stile del riquadro, abilitare il pulsante personalizza, abilitare una casella della Guida, abilitare le ombreggiature per i menu a comparsa e aggiornare la barra dei menu. Questo frammento di codice fa parte dell'esempio demo di Internet Explorer.
CMFCMenuBar m_wndMenuBar;
m_wndMenuBar.SetPaneStyle(m_wndMenuBar.GetPaneStyle() | CBRS_SIZE_DYNAMIC);
m_wndMenuBar.EnableCustomizeButton(TRUE, -1, _T(""));
// first parameter is the command ID for the button of the Help combo box
// third parameter is the width of the button for the combo box in pixels.
m_wndMenuBar.EnableHelpCombobox(1, _T("enter text here"), 30);
m_wndMenuBar.EnableMenuShadows();
m_wndMenuBar.SetMaximizeMode(true);
Gerarchia di ereditarietà
CMFCMenuBar
Requisiti
Intestazione: afxmenubar.h
CMFCMenuBar::AdjustLocations
Regola le posizioni delle voci di menu sulla barra dei menu.
virtual void AdjustLocations();
Osservazioni:
CMFCMenuBar::AllowChangeTextLabels
Determina se le etichette di testo sono consentite nelle immagini nella barra dei menu.
virtual BOOL AllowChangeTextLabels() const;
Valore restituito
Restituisce TRUE se l'utente può scegliere di visualizzare le etichette di testo nelle immagini.
Osservazioni:
CMFCMenuBar::AllowShowOnPaneMenu
virtual BOOL AllowShowOnPaneMenu() const;
Valore restituito
Osservazioni:
CMFCMenuBar::CalcFixedLayout
virtual CSize CalcFixedLayout(
BOOL bStretch,
BOOL bHorz);
Parametri
[in] bStretch
[in] bHorz
Valore restituito
Osservazioni:
CMFCMenuBar::CalcLayout
virtual CSize CalcLayout(
DWORD dwMode,
int nLength = -1);
Parametri
[in] dwMode
[in] nLength
Valore restituito
Osservazioni:
CMFCMenuBar::CalcMaxButtonHeight
virtual int CalcMaxButtonHeight();
Valore restituito
Osservazioni:
CMFCMenuBar::CanBeClosed
virtual BOOL CanBeClosed() const;
Valore restituito
Osservazioni:
CMFCMenuBar::CanBeRestored
virtual BOOL CanBeRestored() const;
Valore restituito
Osservazioni:
CMFCMenuBar::Create
Crea un controllo menu e lo collega a un oggetto CMFCMenuBar .
virtual BOOL Create(
CWnd* pParentWnd,
DWORD dwStyle = AFX_DEFAULT_TOOLBAR_STYLE,
UINT nID = AFX_IDW_MENUBAR);
Parametri
pParentWnd
[in] Puntatore alla finestra padre per il nuovo CMFCMenuBar
oggetto.
dwStyle
[in] Stile della nuova barra dei menu.
nID
[in] ID della finestra figlio della barra dei menu.
Valore restituito
TRUE se l'operazione riesce; in caso contrario, FALSE.
Osservazioni:
Dopo aver costruito un CMFCMenuBar
oggetto, è necessario chiamare Create
. Questo metodo crea il CMFCMenuBar
controllo e lo collega all'oggetto CMFCMenuBar
.
Per altre informazioni sugli stili della barra degli strumenti, vedere CBasePane::SetPaneStyle.
CMFCMenuBar::CreateEx
Crea un oggetto CMFCMenuBar con gli stili estesi specificati.
virtual BOOL CreateEx(
CWnd* pParentWnd,
DWORD dwCtrlStyle = TBSTYLE_FLAT,
DWORD dwStyle = AFX_DEFAULT_TOOLBAR_STYLE,
CRect rcBorders = CRect(1,
1,
1,
1),
UINT nID =AFX_IDW_MENUBAR);
Parametri
pParentWnd
[in] Puntatore alla finestra padre del nuovo CMFCMenuBar
oggetto.
dwCtrlStyle
[in] Stili aggiuntivi per la nuova barra dei menu.
dwStyle
[in] Stile principale della nuova barra dei menu.
rcBorders
[in] Parametro CRect
che specifica le dimensioni per i bordi dell'oggetto CMFCMenuBar
.
nID
[in] ID della finestra figlio della barra dei menu.
Valore restituito
Diverso da zero se il metodo ha esito positivo; in caso contrario, 0.
Osservazioni:
È consigliabile usare questa funzione anziché CMFCMenuBar::Create quando si desidera specificare gli stili oltre allo stile della barra degli strumenti. Alcuni stili aggiuntivi usati di frequente sono TBSTYLE_TRANSPARENT e CBRS_TOP.
Per gli elenchi di stili aggiuntivi, vedere Stili di controllo e pulsante della barra degli strumenti, stili di controllo comuni e stili di finestra comuni.
Esempio
Nell'esempio seguente viene illustrato come usare il CreateEx
metodo della CMFCMenuBar
classe . Questo frammento di codice fa parte dell'esempio demo di Internet Explorer.
CMFCMenuBar m_wndMenuBar;
// The this pointer points to CMainFrame class which extends the CFrameWnd class.
if (!m_wndMenuBar.CreateEx(this, TBSTYLE_TRANSPARENT))
{
TRACE0("Failed to create menubar\n");
return -1; // fail to create
}
CMFCMenuBar::CreateFromMenu
Inizializza un oggetto CMFCMenuBar . Questo metodo modella l'oggetto CMFCMenuBar
dopo un parametro HMENU.
virtual void CreateFromMenu(
HMENU hMenu,
BOOL bDefaultMenu = FALSE,
BOOL bForceUpdate = FALSE);
Parametri
hMenu
[in] Handle per una risorsa di menu. CreateFromMenu
usa questa risorsa come modello per .CMFCMenuBar
bDefaultMenu
[in] Valore booleano che indica se il nuovo menu è il menu predefinito.
bForceUpdate
[in] Valore booleano che indica se questo metodo forza l'aggiornamento di un menu.
Osservazioni:
Utilizzare questo metodo se si desidera che un controllo menu abbia le stesse voci di menu di una risorsa di menu. Questo metodo viene chiamato dopo aver chiamato CMFCMenuBar::Create o CMFCMenuBar::CreateEx.
CMFCMenuBar::EnableHelpCombobox
Abilita una casella combinata della Guida che si trova sul lato destro della barra dei menu.
void EnableHelpCombobox(
UINT uiID,
LPCTSTR lpszPrompt = NULL,
int nComboBoxWidth = 150);
Parametri
uiID
[in] ID comando per il pulsante della casella combinata ?
lpszPrompt
[in] Stringa che contiene il testo visualizzato dal framework nella casella combinata se è vuoto e non attivo. Ad esempio, "Immettere il testo qui".
nComboBoxWidth
[in] Larghezza del pulsante per la casella combinata in pixel.
Osservazioni:
La casella combinata Guida è simile alla casella combinata ? nella barra dei menu di Microsoft Word.
Quando si chiama questo metodo con uiID impostato su 0, questo metodo nasconde la casella combinata. In caso contrario, questo metodo visualizza automaticamente la casella combinata sul lato destro della barra dei menu. Dopo aver chiamato questo metodo, chiamare CMFCMenuBar::GetHelpCombobox per ottenere un puntatore all'oggetto CMFCToolBarComboBoxButton inserito.
CMFCMenuBar::EnableMenuShadows
Abilita le ombreggiature per i menu a comparsa.
static void EnableMenuShadows(BOOL bEnable = TRUE);
Parametri
bEnable
[in] Parametro booleano che indica se le ombreggiature devono essere abilitate per i menu a comparsa.
Osservazioni:
L'algoritmo usato da questo metodo è complesso e può ridurre le prestazioni dell'applicazione nei sistemi più lenti.
CMFCMenuBar::GetAvailableExpandSize
virtual int GetAvailableExpandSize() const;
Valore restituito
Osservazioni:
CMFCMenuBar::GetColumnWidth
virtual int GetColumnWidth() const;
Valore restituito
Osservazioni:
CMFCMenuBar::GetDefaultMenu
Recupera un handle nel menu originale. Il framework carica il menu originale dal file di risorse.
HMENU GetDefaultMenu() const;
Valore restituito
Handle per una risorsa di menu.
Osservazioni:
Se l'applicazione personalizza un menu, è possibile usare questo metodo per recuperare un handle nel menu originale.
CMFCMenuBar::GetDefaultMenuResId
Recupera l'identificatore della risorsa per il menu predefinito.
UINT GetDefaultMenuResId() const;
Valore restituito
Identificatore di risorsa del menu.
Osservazioni:
Il framework carica il menu predefinito per l'oggetto CMFCMenuBar
dal file di risorse.
CMFCMenuBar::GetFloatPopupDirection
int GetFloatPopupDirection(CMFCToolBarMenuButton* pButton);
Parametri
[in] pButton
Valore restituito
Osservazioni:
CMFCMenuBar::GetForceDownArrows
BOOL GetForceDownArrows();
Valore restituito
Osservazioni:
CMFCMenuBar::GetHelpCombobox
Restituisce un puntatore alla casella combinata ?
CMFCToolBarComboBoxButton* GetHelpCombobox();
Valore restituito
Puntatore alla casella combinata ? NULL se la casella combinata della Guida è nascosta o non è abilitata.
Osservazioni:
La casella combinata Guida si trova sul lato destro della barra dei menu. Chiamare il metodo CMFCMenuBar::EnableHelpCombobox per abilitare questa casella combinata.
CMFCMenuBar::GetHMenu
Recupera l'handle al menu associato all'oggetto CMFCMenuBar .
HMENU GetHMenu() const;
CMFCMenuBar::GetMenuFont
Recupera il tipo di carattere del menu corrente.
static const CFont& GetMenuFont(BOOL bHorz = TRUE);
Parametri
bHorz
[in] Parametro booleano che specifica se restituire il tipo di carattere orizzontale o verticale. TRUE indica il tipo di carattere orizzontale.
Valore restituito
Puntatore a un parametro CFont che contiene il tipo di carattere della barra dei menu corrente.
Osservazioni:
Il tipo di carattere restituito è un parametro globale per l'applicazione. Per tutti gli CMFCMenuBar
oggetti vengono mantenuti due tipi di carattere globali. Questi tipi di carattere separati vengono usati per le barre dei menu orizzontali e verticali.
CMFCMenuBar::GetMenuItem
Recupera un oggetto CMFCToolBarButton su una barra dei menu in base all'indice dell'elemento.
CMFCToolBarButton* GetMenuItem(int iItem) const;
Parametri
iItem
[in] Indice della voce di menu da restituire.
Valore restituito
Puntatore all'oggetto CMFCToolBarButton
che corrisponde all'indice specificato da iItem. NULL se l'indice non è valido.
CMFCMenuBar::GetRowHeight
virtual int GetRowHeight() const;
Valore restituito
Osservazioni:
CMFCMenuBar::GetSystemButton
CMFCToolBarMenuButtonsButton* GetSystemButton(
UINT uiBtn,
BOOL bByCommand = TRUE) const;
Parametri
[in] uiBtn
[in] bByCommand
Valore restituito
Osservazioni:
CMFCMenuBar::GetSystemButtonsCount
int GetSystemButtonsCount() const;
Valore restituito
Osservazioni:
CMFCMenuBar::GetSystemMenu
CMFCToolBarSystemMenuButton* GetSystemMenu() const;
Valore restituito
Osservazioni:
CMFCMenuBar::HighlightDisabledItems
Controlla se il framework evidenzia le voci di menu disabilitate.
static void HighlightDisabledItems(BOOL bHighlight = TRUE);
Parametri
bHighlight
[in] Parametro booleano che indica se il framework evidenzia le voci di menu non disponibili.
Osservazioni:
Per impostazione predefinita, il framework non evidenzia le voci di menu non disponibili quando l'utente posiziona il puntatore del mouse su di essi.
CMFCMenuBar::IsButtonExtraSizeAvailable
virtual BOOL IsButtonExtraSizeAvailable() const;
Valore restituito
Osservazioni:
CMFCMenuBar::IsHighlightDisabledItems
Indica se il framework evidenzia le voci di menu non disponibili.
static BOOL IsHighlightDisabledItems();
Valore restituito
TRUE se le voci di menu non disponibili sono evidenziate; in caso contrario FALSE.
Osservazioni:
Per impostazione predefinita, il framework non evidenzia le voci di menu non disponibili quando l'utente posiziona il puntatore del mouse su di essi. Usare il metodo CMFCMenuBar::HighlightDisabledItems per abilitare questa funzionalità.
CMFCMenuBar::IsMenuShadows
Indica se il framework disegna le ombreggiature per i menu a comparsa.
static BOOL IsMenuShadows();
Valore restituito
TRUE se il framework disegna ombreggiature di menu; in caso contrario FALSE.
Osservazioni:
Usare il metodo CMFCMenuBar::EnableMenuShadows per abilitare o disabilitare questa funzionalità.
CMFCMenuBar::IsRecentlyUsedMenus
Indica se i comandi di menu usati di recente vengono visualizzati sulla barra dei menu.
static BOOL IsRecentlyUsedMenus();
Valore restituito
Diverso da zero se l'oggetto CMFCMenuBar
mostra i comandi di menu usati di recente; in caso contrario, 0.
Osservazioni:
Usare la funzione CMFCMenuBar::SetRecentlyUsedMenus per controllare se la barra dei menu mostra i comandi di menu usati di recente.
CMFCMenuBar::IsShowAllCommands
Indica se i menu visualizzano tutti i comandi.
static BOOL IsShowAllCommands();
Valore restituito
Diverso da zero se CMFCMenuBar
visualizza tutti i comandi; in caso contrario, 0.
Osservazioni:
Un CMFCMenuBar
oggetto può essere configurato per visualizzare tutti i comandi o visualizzare solo un subset di comandi. Per altre informazioni su questa funzionalità, vedere Classe CMFCMenuBar.
IsShowAllCommands
indicherà come questa funzionalità è configurata per l'oggetto CMFCMenuBar
. Per controllare quali comandi di menu vengono visualizzati, usare i metodi CMFCMenuBar::SetShowAllCommands e CMFCMenuBar::SetRecentlyUsedMenus.
CMFCMenuBar::IsShowAllCommandsDelay
Indica se l'oggetto CMFCMenuBar visualizza tutti i comandi dopo un breve ritardo.
static BOOL IsShowAllCommandsDelay();
Valore restituito
Diverso da zero se la barra dei menu visualizza i menu completi dopo un breve ritardo; in caso contrario, 0.
Osservazioni:
Quando si configura una barra dei menu per visualizzare le voci usate di recente, la barra dei menu visualizza il menu completo in uno dei due modi seguenti:
Visualizza il menu completo dopo un ritardo programmato da quando l'utente passa il cursore sulla freccia nella parte inferiore del menu.
Visualizzare il menu completo dopo che l'utente fa clic sulla freccia nella parte inferiore del menu.
Per impostazione predefinita, tutti gli CMFCMenuBar
oggetti usano l'opzione per visualizzare il menu completo dopo un breve ritardo. Questa opzione non può essere modificata a livello di codice nella CMFCMenuBar
classe . Tuttavia, un utente può modificare il comportamento durante la personalizzazione della barra degli strumenti tramite la finestra di dialogo Personalizza .
CMFCMenuBar::LoadState
Carica lo stato della barra dei menu dal Registro di sistema di Windows.
virtual BOOL LoadState(
LPCTSTR lpszProfileName = NULL,
int nIndex = -1,
UINT uiID = (UINT)-1);
Parametri
lpszProfileName
[in] Stringa che contiene il percorso di una chiave del Registro di sistema di Windows.
nIndex
[in] ID di controllo per la barra dei menu.
uiID
[in] Valore riservato.
Valore restituito
TRUE se il metodo ha avuto esito positivo; in caso contrario FALSE.
Osservazioni:
Utilizzare il metodo CMFCMenuBar::SaveState per salvare lo stato della barra dei menu nel Registro di sistema. Le informazioni salvate includono le voci di menu, lo stato del dock e la posizione della barra dei menu.
Nella maggior parte dei casi l'applicazione non chiama LoadState
. Il framework chiama questo metodo quando inizializza l'area di lavoro.
CMFCMenuBar::OnChangeHot
virtual void OnChangeHot(int iHot);
Parametri
[in] iHot
Osservazioni:
CMFCMenuBar::OnDefaultMenuLoaded
Il framework chiama questo metodo quando carica la risorsa di menu dal file di risorse.
virtual void OnDefaultMenuLoaded(HMENU hMenu);
Parametri
hMenu
[in] Handle per il menu associato all'oggetto CMFCMenuBar
.
Osservazioni:
L'implementazione predefinita di questa funzione non esegue alcuna operazione. Eseguire l'override di questa funzione per eseguire codice personalizzato dopo che il framework carica una risorsa di menu dal file di risorse.
CMFCMenuBar::OnSendCommand
virtual BOOL OnSendCommand(const CMFCToolBarButton* pButton);
Parametri
[in] pButton
Valore restituito
Osservazioni:
CMFCMenuBar::OnSetDefaultButtonText
Il framework chiama questo metodo quando l'utente modifica il testo di una voce nella barra dei menu.
virtual BOOL OnSetDefaultButtonText(CMFCToolBarButton* pButton);
Parametri
pButton
[in] Puntatore all'oggetto CMFCToolBarButton che l'utente desidera personalizzare.
Valore restituito
TRUE se il framework applica le modifiche dell'utente alla barra dei menu; in caso contrario FALSE.
Osservazioni:
L'implementazione predefinita per questo metodo modifica il testo del pulsante nel testo fornito dall'utente.
CMFCMenuBar::OnToolHitTest
virtual INT_PTR OnToolHitTest(
CPoint point,
TOOLINFO* pTI) const;
Parametri
[in] punto
[in] Pti
Valore restituito
Osservazioni:
CMFCMenuBar::P reTranslateMessage
virtual BOOL PreTranslateMessage(MSG* pMsg);
Parametri
[in] pMsg
Valore restituito
Osservazioni:
CMFCMenuBar::RestoreOriginalstate
Chiamato dal framework quando l'utente seleziona Reimposta nella finestra di dialogo Personalizza .
virtual BOOL RestoreOriginalstate();
Valore restituito
Diverso da zero se il metodo ha esito positivo; in caso contrario, 0.
Osservazioni:
Questo metodo viene chiamato quando l'utente seleziona Reimposta dal menu di personalizzazione. È anche possibile chiamare manualmente questo metodo per reimpostare lo stato della barra dei menu a livello di codice. Questo metodo carica lo stato originale dal file di risorse.
Eseguire l'override di questo metodo se si desidera eseguire qualsiasi elaborazione quando l'utente seleziona l'opzione Reimposta .
CMFCMenuBar::SaveState
Salva lo stato dell'oggetto CMFCMenuBar nel Registro di sistema di Windows.
virtual BOOL SaveState (
LPCTSTR lpszProfileName = NULL,
int nIndex = -1,
UINT uiID = (UINT)-1);
Parametri
lpszProfileName
[in] Stringa che contiene il percorso di una chiave del Registro di sistema di Windows.
nIndex
[in] ID di controllo per la barra dei menu.
uiID
[in] Valore riservato.
Valore restituito
TRUE se ha esito positivo; in caso contrario FALSE;
Osservazioni:
In genere, l'applicazione non chiama SaveState
. Il framework chiama questo metodo quando l'area di lavoro viene serializzata. Per altre informazioni, vedere CWinAppEx::SaveState.
Le informazioni salvate includono le voci di menu, lo stato del dock e la posizione della barra dei menu.
CMFCMenuBar::SetDefaultMenuResId
Imposta il menu predefinito per un oggetto CMFCMenuBar in base all'ID risorsa.
void SetDefaultMenuResId(UINT uiResId);
Parametri
uiResId
[in] ID risorsa per il nuovo menu predefinito.
Osservazioni:
Il metodo CMFCMenuBar::RestoreOriginalstate ripristina il menu predefinito dal file di risorse.
Utilizzare il metodo CMFCMenuBar::GetDefaultMenuResId per recuperare il menu predefinito senza ripristinarlo.
CMFCMenuBar::SetForceDownArrows
void SetForceDownArrows(BOOL bValue);
Parametri
[in] bValue
Osservazioni:
CMFCMenuBar::SetMaximizeMode
Il framework chiama questo metodo quando un MDI modifica la modalità di visualizzazione e la barra dei menu deve essere aggiornata.
void SetMaximizeMode(
BOOL bMax,
CWnd* pWnd = NULL,
BOOL bRecalcLayout = TRUE);
Parametri
bMax
[in] Valore booleano che specifica la modalità. Per ulteriori informazioni, vedere le sezione Note.
pWnd
[in] Puntatore alla finestra figlio MDI che cambia.
bRecalcLayout
[in] Valore booleano che specifica se il layout della barra dei menu deve essere ricalcolato immediatamente.
Osservazioni:
Quando una finestra figlio MDI è ingrandita, una barra dei menu collegata alla finestra cornice principale MDI visualizza il menu di sistema e i pulsanti Riduci a icona, Ingrandisci e Chiudi. Se bMax è TRUE e pWnd non è NULL, la finestra figlio MDI è ingrandita e la barra dei menu deve incorporare i controlli aggiuntivi. In caso contrario, la barra dei menu torna allo stato regolare.
CMFCMenuBar::SetMenuButtonRTC
Imposta le informazioni sulla classe di runtime usate dal framework quando l'utente crea pulsanti di menu.
void SetMenuButtonRTC(CRuntimeClass* pMenuButtonRTC);
Parametri
pMenuButtonRTC
[in] Informazioni CRuntimeClass per una classe derivata dalla classe CMFCMenuButton.
Osservazioni:
Quando un utente aggiunge nuovi pulsanti alla barra dei menu, il framework crea i pulsanti in modo dinamico. Per impostazione predefinita, crea CMFCMenuButton
oggetti. Eseguire l'override di questo metodo per modificare il tipo di oggetti pulsante creati dal framework.
CMFCMenuBar::SetMenuFont
Imposta il tipo di carattere per tutte le barre dei menu nell'applicazione.
static BOOL SetMenuFont(
LPLOGFONT lpLogFont,
BOOL bHorz = TRUE);
Parametri
lpLogFont
[in] Puntatore a una struttura LOGFONT che definisce il tipo di carattere da impostare.
bHorz
[in] TRUE se si desidera utilizzare il parametro lpLogFont per il tipo di carattere verticale, FALSE se si desidera che venga utilizzato per il tipo di carattere orizzontale.
Valore restituito
TRUE se il metodo ha avuto esito positivo; in caso contrario FALSE.
Osservazioni:
Per tutti gli CMFCMenuBar
oggetti vengono usati due tipi di carattere. Questi tipi di carattere separati vengono usati per le barre dei menu orizzontali e verticali.
Le impostazioni del tipo di carattere sono variabili globali e influiscono su tutti gli CMFCMenuBar
oggetti.
CMFCMenuBar::SetRecentlyUsedMenus
Controlla se una barra dei menu visualizza i comandi di menu usati di recente.
static void SetRecentlyUsedMenus (BOOL bOn = TRUE);
Parametri
Bon
[in] Valore booleano che controlla se vengono visualizzati i comandi di menu usati di recente.
CMFCMenuBar::SetShowAllCommands
Controlla se un menu mostra tutti i comandi disponibili.
static void SetShowAllCommands(BOOL bShowAllCommands = TRUE);
Parametri
bShowAllCommands
[in] Parametro booleano che specifica se il menu a comparsa visualizza tutti i comandi di menu.
Osservazioni:
Se un menu non visualizza tutti i comandi di menu, nasconde i comandi usati raramente. Per altre informazioni sulla visualizzazione dei comandi di menu, vedere Classe CMFCMenuBar.