CMFCMenuBar-Klasse
Eine Menüleiste, die Andocken implementiert. Ausführliche Informationen finden Sie im Quellcode des Ordners VC\atlmfc\src\mfc der Visual Studio-Installation.
Syntax
class CMFCMenuBar : public CMFCToolbar
Member
Öffentliche Methoden
Name | Beschreibung |
---|---|
CMFCMenuBar::AdjustLocations | (Überschreibt CMFCToolBar::AdjustLocations .) |
CMFCMenuBar::AllowChangeTextLabels | Gibt an, ob Textbeschriftungen unter Bildern auf den Symbolleistenschaltflächen angezeigt werden können. (Außerkraftsetzungen CMFCToolBar::AllowChangeTextLabels.) |
CMFCMenuBar::AllowShowOnPaneMenu | (Überschreibt CPane::AllowShowOnPaneMenu .) |
CMFCMenuBar::CalcFixedLayout | Berechnet die horizontale Größe der Symbolleiste. (Außerkraftsetzungen CMFCToolBar::CalcFixedLayout.) |
CMFCMenuBar::CalcLayout | (Überschreibt CMFCToolBar::CalcLayout .) |
CMFCMenuBar::CalcMaxButtonHeight | Berechnet die maximale Höhe von Schaltflächen in der Symbolleiste. (Außerkraftsetzungen CMFCToolBar::CalcMaxButtonHeight.) |
CMFCMenuBar::CanBeClosed | Gibt an, ob ein Benutzer die Symbolleiste schließen kann. (Außerkraftsetzungen CMFCToolBar::CanBeClosed.) |
CMFCMenuBar::CanBeRestored | Bestimmt, ob das System eine Symbolleiste nach der Anpassung in den ursprünglichen Zustand wiederherstellen kann. (Außerkraftsetzungen CMFCToolBar::CanBeRestored.) |
CMFCMenuBar::Create | Erstellt ein Menüsteuerelement und fügt es an ein CMFCMenuBar Objekt an. |
CMFCMenuBar::CreateEx | Erstellt ein CMFCMenuBar Objekt mit zusätzlichen Formatvorlagenoptionen. |
CMFCMenuBar::CreateFromMenu | Initialisiert ein CMFCMenuBar -Objekt. Akzeptiert einen HMENU-Parameter, der als Vorlage für eine aufgefüllte Datei CMFCMenuBar fungiert. |
CMFCMenuBar::EnableHelpCombobox | Aktiviert ein Hilfe-Kombinationsfeld , das sich auf der rechten Seite der Menüleiste befindet. |
CMFCMenuBar::EnableMenuShadows | Gibt an, ob Schatten für Popupmenüs angezeigt werden sollen. |
CMFCMenuBar::GetAvailableExpandSize | (Außerkraftsetzungen CPane::GetAvailableExpandSize.) |
CMFCMenuBar::GetColumnWidth | Gibt die Breite der Symbolleistenschaltflächen zurück. (Außerkraftsetzungen CMFCToolBar::GetColumnWidth.) |
CMFCMenuBar::GetDefaultMenu | Gibt ein Handle zum ursprünglichen Menü in der Ressourcendatei zurück. |
CMFCMenuBar::GetDefaultMenuResId | Gibt den Ressourcenbezeichner für das ursprüngliche Menü in der Ressourcendatei zurück. |
CMFCMenuBar::GetFloatPopupDirection | |
CMFCMenuBar::GetForceDownArrows | |
CMFCMenuBar::GetHelpCombobox | Gibt einen Zeiger auf das Hilfe-Kombinationsfeld zurück. |
CMFCMenuBar::GetHMenu | Gibt das Handle an das Menü zurück, das dem CMFCMenuBar Objekt zugeordnet ist. |
CMFCMenuBar::GetMenuFont | Gibt die aktuelle globale Schriftart für Menüobjekte zurück. |
CMFCMenuBar::GetMenuItem | Gibt die Symbolleistenschaltfläche zurück, die dem bereitgestellten Elementindex zugeordnet ist. |
CMFCMenuBar::GetRowHeight | Gibt die Höhe der Symbolleistenschaltflächen zurück. (Außerkraftsetzungen CMFCToolBar::GetRowHeight.) |
CMFCMenuBar::GetSystemButton | |
CMFCMenuBar::GetSystemButtonsCount | |
CMFCMenuBar::GetSystemMenu | |
CMFCMenuBar::HighlightDisabledItems | Gibt an, ob deaktivierte Menüelemente hervorgehoben sind. |
CMFCMenuBar::IsButtonExtraSizeAvailable | Bestimmt, ob die Symbolleiste Schaltflächen mit erweiterten Rahmen anzeigen kann. (Außerkraftsetzungen CMFCToolBar::IsButtonExtraSizeAvailable.) |
CMFCMenuBar::IsHighlightDisabledItems | Gibt an, ob deaktivierte Elemente hervorgehoben sind. |
CMFCMenuBar::IsMenuShadows | Gibt an, ob Schatten für Popupmenüs gezeichnet werden. |
CMFCMenuBar::IsRecentlyUsedMenus | Gibt an, ob zuletzt verwendete Menübefehle auf der Menüleiste angezeigt werden. |
CMFCMenuBar::IsShowAllCommands | Gibt an, ob Popupmenüs alle Befehle anzeigen. |
CMFCMenuBar::IsShowAllCommandsDelay | Gibt an, ob alle Befehle nach kurzer Verzögerung angezeigt werden. |
CMFCMenuBar::LoadState | Lädt den Status des CMFCMenuBar Objekts aus der Registrierung. |
CMFCMenuBar::OnChangeHot | Wird vom Framework aufgerufen, wenn ein Benutzer eine Schaltfläche auf der Symbolleiste auswählt. (Außerkraftsetzungen CMFCToolBar::OnChangeHot.) |
CMFCMenuBar::OnDefaultMenuLoaded | Wird vom Framework aufgerufen, wenn ein Framefenster das Standardmenü aus der Ressourcendatei lädt. |
CMFCMenuBar::OnSendCommand | (Überschreibt CMFCToolBar::OnSendCommand .) |
CMFCMenuBar::OnSetDefaultButtonText | Wird vom Framework aufgerufen, wenn sich ein Menü im Anpassungsmodus befindet und der Benutzer den Text eines Menüelements ändert. |
CMFCMenuBar::OnToolHitTest | (Überschreibt CMFCToolBar::OnToolHitTest .) |
CMFCMenuBar::P reTranslateMessage | (Überschreibt CMFCToolBar::PreTranslateMessage .) |
CMFCMenuBar::RestoreOriginalstate | Wird vom Framework aufgerufen, wenn sich ein Menü im Anpassungsmodus befindet und der Benutzer "Zurücksetzen " für eine Menüleiste auswählt. |
CMFCMenuBar::SaveState | Speichert den Status des CMFCMenuBar Objekts in der Registrierung. |
CMFCMenuBar::SetDefaultMenuResId | Legt das ursprüngliche Menü in der Ressourcendatei fest. |
CMFCMenuBar::SetForceDownArrows | |
CMFCMenuBar::SetMaximizeMode | Wird vom Framework aufgerufen, wenn ein untergeordnetes MDI-Fenster seinen Anzeigemodus ändert. Wenn das untergeordnete MDI-Fenster neu maximiert oder nicht mehr maximiert ist, aktualisiert diese Methode die Menüleiste. |
CMFCMenuBar::SetMenuButtonRTC | Legt die Laufzeitklasseninformationen fest, die generiert werden, wenn der Benutzer dynamisch Menüschaltflächen erstellt. |
CMFCMenuBar::SetMenuFont | Legt die Schriftart für alle Menüs in der Anwendung fest. |
CMFCMenuBar::SetRecentlyUsedMenus | Gibt an, ob in einer Menüleiste zuletzt verwendete Menübefehle angezeigt werden. |
CMFCMenuBar::SetShowAllCommands | Gibt an, ob in der Menüleiste alle Befehle angezeigt werden. |
Hinweise
Die CMFCMenuBar
Klasse ist eine Menüleiste, die Andockfunktionen implementiert. Es ähnelt einer Symbolleiste, obwohl sie nicht geschlossen werden kann - sie wird immer angezeigt.
CMFCMenuBar
unterstützt die Option zum Anzeigen von zuletzt verwendeten Menüelementobjekten. Wenn diese Option aktiviert ist, werden in der CMFCMenuBar
ersten Anzeige nur eine Teilmenge der verfügbaren Befehle angezeigt. Danach werden zuletzt verwendete Befehle zusammen mit der ursprünglichen Teilmenge von Befehlen angezeigt. Darüber hinaus kann der Benutzer das Menü immer erweitern, um alle verfügbaren Befehle anzuzeigen. Daher ist jeder verfügbare Befehl so konfiguriert, dass er ständig angezeigt wird oder nur angezeigt wird, wenn er kürzlich ausgewählt wurde.
Um ein CMFCMenuBar
Objekt zu verwenden, betten Sie es in das Hauptfensterrahmenobjekt ein. Bei der Verarbeitung der Nachricht, des Anrufs WM_CREATE
CMFCMenuBar::Create
oder CMFCMenuBar::CreateEx
der . Übergeben Sie unabhängig davon, welche Funktion Sie verwenden, einen Zeiger an das Hauptrahmenfenster. Aktivieren Sie dann das Andocken durch Aufrufen von CFrameWndEx::EnableDocking. Andocken Sie dieses Menü, indem Sie CFrameWndEx::D ockPane aufrufen.
Beispiel
Das folgende Beispiel veranschaulicht die Verwendung verschiedener Methoden in der CMFCMenuBar
-Klasse. Das Beispiel zeigt, wie Sie die Formatvorlage des Bereichs festlegen, die Schaltfläche "Anpassen" aktivieren, ein Hilfefeld aktivieren, Schatten für Popupmenüs aktivieren und die Menüleiste aktualisieren. Dieser Codeausschnitt ist Teil des IE-Demobeispiels.
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);
Vererbungshierarchie
CMFCMenuBar
Anforderungen
Kopfzeile: afxmenubar.h
CMFCMenuBar::AdjustLocations
Passt die Positionen der Menüelemente auf der Menüleiste an.
virtual void AdjustLocations();
Hinweise
CMFCMenuBar::AllowChangeTextLabels
Bestimmt, ob Textbeschriftungen unter Bildern in der Menüleiste zulässig sind.
virtual BOOL AllowChangeTextLabels() const;
Rückgabewert
Gibt TRUE zurück, wenn der Benutzer textbeschriftungen unter Bildern anzeigen kann.
Hinweise
CMFCMenuBar::AllowShowOnPaneMenu
virtual BOOL AllowShowOnPaneMenu() const;
Rückgabewert
Bemerkungen
CMFCMenuBar::CalcFixedLayout
virtual CSize CalcFixedLayout(
BOOL bStretch,
BOOL bHorz);
Parameter
[in] bStretch
[in] bHorz
Rückgabewert
Bemerkungen
CMFCMenuBar::CalcLayout
virtual CSize CalcLayout(
DWORD dwMode,
int nLength = -1);
Parameter
[in] dwMode
[in] nLength
Rückgabewert
Bemerkungen
CMFCMenuBar::CalcMaxButtonHeight
virtual int CalcMaxButtonHeight();
Rückgabewert
Bemerkungen
CMFCMenuBar::CanBeClosed
virtual BOOL CanBeClosed() const;
Rückgabewert
Bemerkungen
CMFCMenuBar::CanBeRestored
virtual BOOL CanBeRestored() const;
Rückgabewert
Bemerkungen
CMFCMenuBar::Create
Erstellt ein Menüsteuerelement und fügt es an ein CMFCMenuBar -Objekt an.
virtual BOOL Create(
CWnd* pParentWnd,
DWORD dwStyle = AFX_DEFAULT_TOOLBAR_STYLE,
UINT nID = AFX_IDW_MENUBAR);
Parameter
pParentWnd
[in] Zeigen Sie auf das übergeordnete Fenster für das neue CMFCMenuBar
Objekt.
dwStyle
[in] Die Formatvorlage der neuen Menüleiste.
Nid
[in] Die ID für das untergeordnete Fenster der Menüleiste.
Rückgabewert
TRUE, wenn erfolgreich, andernfalls FALSE.
Hinweise
Nachdem Sie ein CMFCMenuBar
Objekt erstellt haben, müssen Sie aufrufen Create
. Diese Methode erstellt das CMFCMenuBar
Steuerelement und fügt es an das CMFCMenuBar
Objekt an.
Weitere Informationen zu Symbolleistenformatvorlagen finden Sie unter "CBasePane::SetPaneStyle".
CMFCMenuBar::CreateEx
Erstellt ein CMFCMenuBar -Objekt mit angegebenen erweiterten Formatvorlagen.
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);
Parameter
pParentWnd
[in] Zeigen Sie auf das übergeordnete Fenster des neuen CMFCMenuBar
Objekts.
dwCtrlStyle
[in] Zusätzliche Formatvorlagen für die neue Menüleiste.
dwStyle
[in] Die Hauptformatvorlage der neuen Menüleiste.
rcBorders
[in] Ein CRect
Parameter, der die Größen für die Rahmen des CMFCMenuBar
Objekts angibt.
Nid
[in] Die ID für das untergeordnete Fenster der Menüleiste.
Rückgabewert
Nonzero, wenn die Methode erfolgreich ist; andernfalls 0.
Hinweise
Sie sollten diese Funktion anstelle von CMFCMenuBar::Create verwenden, wenn Sie zusätzlich zur Symbolleistenformatvorlage Formatvorlagen angeben möchten. Einige häufig verwendete zusätzliche Formatvorlagen sind TBSTYLE_TRANSPARENT und CBRS_TOP.
Listen mit zusätzlichen Formatvorlagen finden Sie unter Symbolleisten-Steuerelement- und Schaltflächenformatvorlagen, allgemeine Steuerelementstile und allgemeine Fensterstile.
Beispiel
Im folgenden Beispiel wird die Verwendung der CreateEx
Methode der CMFCMenuBar
Klasse veranschaulicht. Dieser Codeausschnitt ist Teil des IE-Demobeispiels.
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
Initialisiert ein CMFCMenuBar -Objekt. Diese Methode modelliert das CMFCMenuBar
Objekt nach einem HMENU-Parameter.
virtual void CreateFromMenu(
HMENU hMenu,
BOOL bDefaultMenu = FALSE,
BOOL bForceUpdate = FALSE);
Parameter
hMenu
[in] Ein Handle zu einer Menüressource. CreateFromMenu
verwendet diese Ressource als Vorlage für die CMFCMenuBar
.
bDefaultMenu
[in] Ein Boolescher Wert, der angibt, ob das neue Menü das Standardmenü ist.
bForceUpdate
[in] Ein Boolescher Wert, der angibt, ob diese Methode eine Menüaktualisierung erzwingt.
Hinweise
Verwenden Sie diese Methode, wenn ein Menüsteuerelement dieselben Menüelemente wie eine Menüressource aufweisen soll. Sie rufen diese Methode auf, nachdem Sie entweder CMFCMenuBar::Create oder CMFCMenuBar::CreateEx aufgerufen haben.
CMFCMenuBar::EnableHelpCombobox
Aktiviert ein Hilfe-Kombinationsfeld , das sich auf der rechten Seite der Menüleiste befindet.
void EnableHelpCombobox(
UINT uiID,
LPCTSTR lpszPrompt = NULL,
int nComboBoxWidth = 150);
Parameter
uiID
[in] Die Befehls-ID für die Schaltfläche des Hilfe-Kombinationsfelds .
lpszPrompt
[in] Eine Zeichenfolge, die den Text enthält, den das Framework im Kombinationsfeld anzeigt, wenn es leer und nicht aktiv ist. Beispiel: "Geben Sie den Text hier ein".
nComboBoxWidth
[in] Die Breite der Schaltfläche für das Kombinationsfeld in Pixeln.
Hinweise
Das Kombinationsfeld "Hilfe " ähnelt dem Kombinationsfeld "Hilfe " in der Menüleiste von Microsoft Word.
Wenn Sie diese Methode mit uiID auf 0 aufrufen, blendet diese Methode das Kombinationsfeld aus. Andernfalls zeigt diese Methode das Kombinationsfeld automatisch auf der rechten Seite der Menüleiste an. Rufen Sie nach dem Aufrufen dieser Methode CMFCMenuBar::GetHelpCombobox auf, um einen Zeiger auf das eingefügte CMFCToolBarComboBoxButton -Objekt abzurufen.
CMFCMenuBar::EnableMenuShadows
Aktiviert Schatten für Popupmenüs.
static void EnableMenuShadows(BOOL bEnable = TRUE);
Parameter
bEnable
[in] Ein boolescher Parameter, der angibt, ob Schatten für Popupmenüs aktiviert werden sollen.
Hinweise
Der von dieser Methode verwendete Algorithmus ist komplex und kann die Leistung Ihrer Anwendung auf langsameren Systemen verringern.
CMFCMenuBar::GetAvailableExpandSize
virtual int GetAvailableExpandSize() const;
Rückgabewert
Bemerkungen
CMFCMenuBar::GetColumnWidth
virtual int GetColumnWidth() const;
Rückgabewert
Bemerkungen
CMFCMenuBar::GetDefaultMenu
Ruft ein Handle zum ursprünglichen Menü ab. Das Framework lädt das ursprüngliche Menü aus der Ressourcendatei.
HMENU GetDefaultMenu() const;
Rückgabewert
Ein Handle zu einer Menüressource.
Hinweise
Wenn Ihre Anwendung ein Menü anpasst, können Sie diese Methode verwenden, um ein Handle zum ursprünglichen Menü abzurufen.
CMFCMenuBar::GetDefaultMenuResId
Ruft den Ressourcenbezeichner für das Standardmenü ab.
UINT GetDefaultMenuResId() const;
Rückgabewert
Ein Menüressourcenbezeichner.
Hinweise
Das Framework lädt das Standardmenü für das CMFCMenuBar
Objekt aus der Ressourcendatei.
CMFCMenuBar::GetFloatPopupDirection
int GetFloatPopupDirection(CMFCToolBarMenuButton* pButton);
Parameter
[in] pButton
Rückgabewert
Bemerkungen
CMFCMenuBar::GetForceDownArrows
BOOL GetForceDownArrows();
Rückgabewert
Bemerkungen
CMFCMenuBar::GetHelpCombobox
Gibt einen Zeiger auf das Hilfe-Kombinationsfeld zurück.
CMFCToolBarComboBoxButton* GetHelpCombobox();
Rückgabewert
Ein Zeiger auf das Hilfe-Kombinationsfeld . NULL, wenn das Hilfe-Kombinationsfeld ausgeblendet oder nicht aktiviert ist.
Hinweise
Das Kombinationsfeld "Hilfe " befindet sich auf der rechten Seite der Menüleiste. Rufen Sie die Methode CMFCMenuBar::EnableHelpCombobox auf, um dieses Kombinationsfeld zu aktivieren.
CMFCMenuBar::GetHMenu
Ruft das Handle an das Menü ab, das dem CMFCMenuBar -Objekt zugeordnet ist.
HMENU GetHMenu() const;
CMFCMenuBar::GetMenuFont
Ruft die aktuelle Menüschriftart ab.
static const CFont& GetMenuFont(BOOL bHorz = TRUE);
Parameter
bHorz
[in] Ein boolescher Parameter, der angibt, ob die horizontale oder vertikale Schriftart zurückgegeben werden soll. TRUE gibt die horizontale Schriftart an.
Rückgabewert
Ein Zeiger auf einen CFont-Parameter , der die aktuelle Schriftart der Menüleiste enthält.
Hinweise
Die zurückgegebene Schriftart ist ein globaler Parameter für die Anwendung. Für alle CMFCMenuBar
Objekte werden zwei globale Schriftarten verwaltet. Diese separaten Schriftarten werden für horizontale und vertikale Menüleisten verwendet.
CMFCMenuBar::GetMenuItem
Ruft ein CMFCToolBarButton -Objekt auf einer Menüleiste basierend auf dem Elementindex ab.
CMFCToolBarButton* GetMenuItem(int iItem) const;
Parameter
iItem
[in] Der Index des zurückzugebenden Menüelements.
Rückgabewert
Ein Zeiger auf das CMFCToolBarButton
Objekt, das dem von iItem angegebenen Index entspricht. NULL, wenn der Index ungültig ist.
CMFCMenuBar::GetRowHeight
virtual int GetRowHeight() const;
Rückgabewert
Bemerkungen
CMFCMenuBar::GetSystemButton
CMFCToolBarMenuButtonsButton* GetSystemButton(
UINT uiBtn,
BOOL bByCommand = TRUE) const;
Parameter
[in] uiBtn
[in] bByCommand
Rückgabewert
Bemerkungen
CMFCMenuBar::GetSystemButtonsCount
int GetSystemButtonsCount() const;
Rückgabewert
Bemerkungen
CMFCMenuBar::GetSystemMenu
CMFCToolBarSystemMenuButton* GetSystemMenu() const;
Rückgabewert
Bemerkungen
CMFCMenuBar::HighlightDisabledItems
Steuert, ob das Framework deaktivierte Menüelemente hervorhebung.
static void HighlightDisabledItems(BOOL bHighlight = TRUE);
Parameter
bHighlight
[in] Ein boolescher Parameter, der angibt, ob das Framework nicht verfügbare Menüelemente hervorhebung.
Hinweise
Standardmäßig hebt das Framework keine nicht verfügbaren Menüelemente hervor, wenn der Benutzer den Mauszeiger darüber positioniert.
CMFCMenuBar::IsButtonExtraSizeAvailable
virtual BOOL IsButtonExtraSizeAvailable() const;
Rückgabewert
Bemerkungen
CMFCMenuBar::IsHighlightDisabledItems
Gibt an, ob das Framework nicht verfügbare Menüelemente hervorhebung.
static BOOL IsHighlightDisabledItems();
Rückgabewert
TRUE, wenn nicht verfügbare Menüelemente hervorgehoben sind; andernfalls FALSE.
Hinweise
Standardmäßig hebt das Framework keine nicht verfügbaren Menüelemente hervor, wenn der Benutzer den Mauszeiger darüber positioniert. Verwenden Sie die CMFCMenuBar::HighlightDisabledItems-Methode , um dieses Feature zu aktivieren.
CMFCMenuBar::IsMenuShadows
Gibt an, ob das Framework Schatten für Popupmenüs zeichnet.
static BOOL IsMenuShadows();
Rückgabewert
TRUE, wenn das Framework Menüschatten zeichnet; andernfalls FALSE.
Hinweise
Verwenden Sie die CMFCMenuBar::EnableMenuShadows-Methode , um dieses Feature zu aktivieren oder zu deaktivieren.
CMFCMenuBar::IsRecentlyUsedMenus
Gibt an, ob zuletzt verwendete Menübefehle auf der Menüleiste angezeigt werden.
static BOOL IsRecentlyUsedMenus();
Rückgabewert
Nonzero, wenn das CMFCMenuBar
Objekt zuletzt verwendete Menübefehle anzeigt; andernfalls 0.
Hinweise
Verwenden Sie die Funktion CMFCMenuBar::SetRecentlyUsedMenus , um zu steuern, ob in der Menüleiste zuletzt verwendete Menübefehle angezeigt werden.
CMFCMenuBar::IsShowAllCommands
Gibt an, ob alle Befehle in Menüs angezeigt werden.
static BOOL IsShowAllCommands();
Rückgabewert
Nonzero, wenn alle CMFCMenuBar
Befehle angezeigt werden; andernfalls 0.
Hinweise
Ein CMFCMenuBar
Objekt kann so konfiguriert werden, dass entweder alle Befehle angezeigt oder nur eine Teilmenge von Befehlen angezeigt wird. Weitere Informationen zu diesem Feature finden Sie unter CMFCMenuBar Class.
IsShowAllCommands
teilt Ihnen mit, wie dieses Feature für das CMFCMenuBar
Objekt konfiguriert ist. Um zu steuern, welche Menübefehle angezeigt werden, verwenden Sie die Methoden CMFCMenuBar::SetShowAllCommands und CMFCMenuBar::SetRecentlyUsedMenus.
CMFCMenuBar::IsShowAllCommandsDelay
Gibt an, ob das CMFCMenuBar -Objekt alle Befehle nach kurzer Verzögerung anzeigt.
static BOOL IsShowAllCommandsDelay();
Rückgabewert
Nonzero, wenn in der Menüleiste nach kurzer Verzögerung vollständige Menüs angezeigt werden; andernfalls 0.
Hinweise
Wenn Sie eine Menüleiste so konfigurieren, dass zuletzt verwendete Elemente angezeigt werden, zeigt die Menüleiste das vollständige Menü auf eine von zwei Arten an:
Zeigt das vollständige Menü nach einer programmierten Verzögerung an, wenn der Benutzer den Cursor über den Pfeil am unteren Rand des Menüs bewegt.
Zeigen Sie das vollständige Menü an, nachdem der Benutzer unten im Menü auf den Pfeil geklickt hat.
Standardmäßig verwenden alle CMFCMenuBar
Objekte die Option, um das vollständige Menü nach kurzer Verzögerung anzuzeigen. Diese Option kann nicht programmgesteuert in der CMFCMenuBar
Klasse geändert werden. Ein Benutzer kann jedoch das Verhalten während der Symbolleistenanpassung mithilfe des Dialogfelds "Anpassen " ändern.
CMFCMenuBar::LoadState
Lädt den Status der Menüleiste aus der Windows-Registrierung.
virtual BOOL LoadState(
LPCTSTR lpszProfileName = NULL,
int nIndex = -1,
UINT uiID = (UINT)-1);
Parameter
lpszProfileName
[in] Eine Zeichenfolge, die den Pfad eines Windows-Registrierungsschlüssels enthält.
nIndex
[in] Die Steuerelement-ID für die Menüleiste.
uiID
[Eingabe] Ein reservierter Wert
Rückgabewert
TRUE, wenn die Methode erfolgreich war; andernfalls FALSE.
Hinweise
Verwenden Sie die CMFCMenuBar::SaveState-Methode , um den Status der Menüleiste in der Registrierung zu speichern. Die gespeicherten Informationen enthalten die Menüelemente, den Dockzustand und die Position der Menüleiste.
In den meisten Fällen wird ihre Anwendung nicht aufgerufen LoadState
. Das Framework ruft diese Methode auf, wenn sie den Arbeitsbereich initialisiert.
CMFCMenuBar::OnChangeHot
virtual void OnChangeHot(int iHot);
Parameter
[in] iHot
Hinweise
CMFCMenuBar::OnDefaultMenuLoaded
Das Framework ruft diese Methode auf, wenn sie die Menüressource aus der Ressourcendatei lädt.
virtual void OnDefaultMenuLoaded(HMENU hMenu);
Parameter
hMenu
[in] Der Ziehpunkt für das dem Objekt zugeordnete CMFCMenuBar
Menü.
Hinweise
Bei der Standardimplementierung dieser Funktion wird keine Aktion ausgeführt. Überschreiben Sie diese Funktion, um benutzerdefinierten Code auszuführen, nachdem das Framework eine Menüressource aus der Ressourcendatei geladen hat.
CMFCMenuBar::OnSendCommand
virtual BOOL OnSendCommand(const CMFCToolBarButton* pButton);
Parameter
[in] pButton
Rückgabewert
Bemerkungen
CMFCMenuBar::OnSetDefaultButtonText
Das Framework ruft diese Methode auf, wenn der Benutzer den Text eines Elements auf der Menüleiste ändert.
virtual BOOL OnSetDefaultButtonText(CMFCToolBarButton* pButton);
Parameter
pButton
[in] Ein Zeiger auf das CMFCToolBarButton -Objekt, das der Benutzer anpassen möchte.
Rückgabewert
TRUE, wenn das Framework den Benutzer auf die Menüleiste anwendet; andernfalls FALSE.
Hinweise
Die Standardimplementierung für diese Methode ändert den Text der Schaltfläche in den vom Benutzer bereitgestellten Text.
CMFCMenuBar::OnToolHitTest
virtual INT_PTR OnToolHitTest(
CPoint point,
TOOLINFO* pTI) const;
Parameter
[in] Punkt
[in] Pti
Rückgabewert
Bemerkungen
CMFCMenuBar::P reTranslateMessage
virtual BOOL PreTranslateMessage(MSG* pMsg);
Parameter
[in] pMsg
Rückgabewert
Bemerkungen
CMFCMenuBar::RestoreOriginalstate
Wird vom Framework aufgerufen, wenn der Benutzer im Dialogfeld "Anpassen" die Option "Zurücksetzen" auswählt.
virtual BOOL RestoreOriginalstate();
Rückgabewert
Nonzero, wenn die Methode erfolgreich ist; andernfalls 0.
Hinweise
Diese Methode wird aufgerufen, wenn der Benutzer im Anpassungsmenü "Zurücksetzen " auswählt. Sie können diese Methode auch manuell aufrufen, um den Zustand der Menüleiste programmgesteuert zurückzusetzen. Diese Methode lädt den ursprünglichen Zustand aus der Ressourcendatei.
Überschreiben Sie diese Methode, wenn Sie eine Verarbeitung durchführen möchten, wenn der Benutzer die Option "Zurücksetzen " auswählt.
CMFCMenuBar::SaveState
Speichert den Status des CMFCMenuBar -Objekts in der Windows-Registrierung.
virtual BOOL SaveState (
LPCTSTR lpszProfileName = NULL,
int nIndex = -1,
UINT uiID = (UINT)-1);
Parameter
lpszProfileName
[in] Eine Zeichenfolge, die den Pfad eines Windows-Registrierungsschlüssels enthält.
nIndex
[in] Die Steuerelement-ID für die Menüleiste.
uiID
[Eingabe] Ein reservierter Wert
Rückgabewert
TRUE, wenn erfolgreich; andernfalls FALSE;
Hinweise
In der Regel ruft Ihre Anwendung nicht auf SaveState
. Das Framework ruft diese Methode auf, wenn der Arbeitsbereich serialisiert wird. Weitere Informationen finden Sie unter CWinAppEx::SaveState.
Die gespeicherten Informationen enthalten die Menüelemente, den Dockzustand und die Position der Menüleiste.
CMFCMenuBar::SetDefaultMenuResId
Legt das Standardmenü für ein CMFCMenuBar -Objekt basierend auf der Ressourcen-ID fest.
void SetDefaultMenuResId(UINT uiResId);
Parameter
uiResId
[in] Die Ressourcen-ID für das neue Standardmenü.
Hinweise
Die CMFCMenuBar::RestoreOriginalstate-Methode stellt das Standardmenü aus der Ressourcendatei wieder her.
Verwenden Sie die CMFCMenuBar::GetDefaultMenuResId-Methode , um das Standardmenü abzurufen, ohne es wiederherzustellen.
CMFCMenuBar::SetForceDownArrows
void SetForceDownArrows(BOOL bValue);
Parameter
[in] bValue
Hinweise
CMFCMenuBar::SetMaximizeMode
Das Framework ruft diese Methode auf, wenn ein MDI seinen Anzeigemodus ändert und die Menüleiste aktualisiert werden muss.
void SetMaximizeMode(
BOOL bMax,
CWnd* pWnd = NULL,
BOOL bRecalcLayout = TRUE);
Parameter
bMax
[in] Ein Boolescher Wert, der den Modus angibt. Weitere Informationen finden Sie im Abschnitt Bemerkungen.
pWnd
[in] Ein Zeiger auf das untergeordnete MDI-Fenster, das geändert wird.
bRecalcLayout
[in] Ein Boolescher Wert, der angibt, ob das Layout der Menüleiste sofort neu berechnet werden soll.
Hinweise
Wenn ein untergeordnetes MDI-Fenster maximiert wird, zeigt eine menüleiste, die dem MDI-Hauptrahmenfenster zugeordnet ist, das Systemmenü und die Schaltflächen "Minimieren", "Maximieren" und "Schließen" an. Wenn bMax WAHR ist und pWnd nicht NULL ist, wird das untergeordnete MDI-Fenster maximiert, und die Menüleiste muss die zusätzlichen Steuerelemente enthalten. Andernfalls kehrt die Menüleiste zum regulären Zustand zurück.
CMFCMenuBar::SetMenuButtonRTC
Legt die Laufzeitklasseninformationen fest, die das Framework verwendet, wenn der Benutzer Menüschaltflächen erstellt.
void SetMenuButtonRTC(CRuntimeClass* pMenuButtonRTC);
Parameter
pMenuButtonRTC
[in] Die CRuntimeClass-Informationen für eine Von der CMFCMenuButton-Klasse abgeleitete Klasse.
Hinweise
Wenn ein Benutzer der Menüleiste neue Schaltflächen hinzufügt, erstellt das Framework die Schaltflächen dynamisch. Standardmäßig werden Objekte erstellt CMFCMenuButton
. Überschreiben Sie diese Methode, um den Typ von Schaltflächenobjekten zu ändern, die das Framework erstellt.
CMFCMenuBar::SetMenuFont
Legt die Schriftart für alle Menüleisten in Ihrer Anwendung fest.
static BOOL SetMenuFont(
LPLOGFONT lpLogFont,
BOOL bHorz = TRUE);
Parameter
lpLogFont
[in] Ein Zeiger auf eine LOGFONT-Struktur , die die festzulegende Schriftart definiert.
bHorz
[in] TRUE, wenn der lpLogFont-Parameter für die vertikale Schriftart verwendet werden soll, FALSE, wenn er für die horizontale Schriftart verwendet werden soll.
Rückgabewert
TRUE, wenn die Methode erfolgreich war; andernfalls FALSE.
Hinweise
Für alle CMFCMenuBar
Objekte werden zwei Schriftarten verwendet. Diese separaten Schriftarten werden für horizontale und vertikale Menüleisten verwendet.
Die Schriftarteinstellungen sind globale Variablen und wirken sich auf alle CMFCMenuBar
Objekte aus.
CMFCMenuBar::SetRecentlyUsedMenus
Steuert, ob in einer Menüleiste zuletzt verwendete Menübefehle angezeigt werden.
static void SetRecentlyUsedMenus (BOOL bOn = TRUE);
Parameter
Bön
[in] Ein Boolescher Wert, der steuert, ob zuletzt verwendete Menübefehle angezeigt werden.
CMFCMenuBar::SetShowAllCommands
Steuert, ob in einem Menü alle verfügbaren Befehle angezeigt werden.
static void SetShowAllCommands(BOOL bShowAllCommands = TRUE);
Parameter
bShowAllCommands
[in] Ein boolescher Parameter, der angibt, ob im Popupmenü alle Menübefehle angezeigt werden.
Hinweise
Wenn in einem Menü nicht alle Menübefehle angezeigt werden, blendet es die selten verwendeten Befehle aus. Weitere Informationen zum Anzeigen von Menübefehlen finden Sie unter CMFCMenuBar Class.